Important
Helios features are now enabled during weekly update windows and are no longer directly tied to SingleStore engine releases. Refer to the release notes to view the latest features available in your Helios cluster.
SYS_ GUID and UUID
On this page
The SYS_ and UUID() functions generate and return a new globally unique identifier (GUID) each time they are called.
Syntax
SYS_GUID()UUID()
Return Type
SYS_: BINARY(16)
UUID: VARCHAR(36)
Remarks
-
Returns a v4 UUID
-
The value returned will be globally unique
-
A new value will be produced for each row processed
-
A new value will be produced for each occurrence of the function in the query syntax
-
UUIDworks exactly likeSYS_except for the return typeGUID -
SYG_/GUID UUIDcannot be used as a default column value for a sharded table -
SYS_/GUID UUIDcannot be used in a computed column expression in a table definition
Note
Use INT or BIGINT fields for joining tables if performance is the most important consideration.BINARY(16) columns works, but is noticeably slower.UUID or SYS_, use AUTO_, or implement application code to provide integer key values on which to join tables, for the best performance.
Examples
SYS_ GUID Example
Create a simple table and insert a row.GUID, convert it to HEX:
CREATE TABLE id_t(a INT, b BINARY(16));INSERT id_t VALUES(1, SYS_GUID());
SELECT a, HEX(b) FROM id_t;
+------+----------------------------------+
| a | HEX(b) |
+------+----------------------------------+
| 1 | 7CD5B7769DF95CEFE034080020825436 |
+------+----------------------------------+UUID Example
CREATE TABLE id_t2(a INT, b VARCHAR(36));INSERT INTO id_t2 VALUES(1, UUID());
SELECT * FROM id_t2;
+------+--------------------------------------+
| a | b |
+------+--------------------------------------+
| 1 | 15c67225-38f9-483b-8394-02a9e35a9156 |
+------+--------------------------------------+Last modified: