更新时间:2025-07-08 GMT+08:00
分享

UUID函数

UUID函数表示可以用于生成UUID类型数据的函数。

uuid_generate_v1()

描述:生成一个UUID类型的序列号。

返回类型:UUID

示例:

1
2
3
4
5
SELECT uuid_generate_v1();
           uuid_generate_v1           
--------------------------------------
 c71ceaca-a175-11e9-a920-797ff7000001
(1 row)

uuid_generate_v1函数根据时间信息、集群节点编号和生成该序列的线程号生成UUID,该UUID在单个集群内是全局唯一的,但在多个集群间的时间信息、集群节点编号、线程号和时钟序列仍然存在同时相等的可能性,因此多个集群间生成的UUID仍然存在极低概率的重复风险。

uuid()

描述:生成一个UUID类型的序列号。此函数为MySQL兼容性函数,仅8.2.0及以上集群版本支持。

返回类型:UUID

示例:

1
2
3
4
5
SELECT uuid();
             uuid
----------------------------------
 6327dc96-f0e7-0100-f2f2-6c9ff700fffe
(1 row)

uuid函数内部生成原理同uuid_generate_v1()函数,即根据时间信息、集群节点编号和生成该序列的线程号生成UUID,该UUID在单个集群内是全局唯一的,但在多个集群间的时间信息、集群节点编号、线程号和时钟序列仍然存在同时相等的可能性,因此多个集群间生成的UUID仍然存在极低概率的重复风险。

sys_guid()

描述:生成Oracle的GUID序列号,类似UUID。此函数为Oracle兼容性函数。

返回类型:text

示例:

1
2
3
4
5
SELECT sys_guid();
             sys_guid             
----------------------------------
 4EBD3C74A17A11E9A1BF797FF7000001
(1 row)

sys_guid函数内部生成原理同uuid_generate_v1函数。

相关文档