FUNCTIONUUID 函数
uuidv4
生成一个版本 4(随机)的 UUID
Generates a version 4 (random) UUID
UUID 函数 引入 18 现存至 20 devel 1 条签名 0 次签名变更
- 分组
- UUID 函数
- 签名数
- 1 条
- 引入版本
- 18
- 状态
- 现存
- 签名变更
- 未变过
- 本版来源
- 英文原文
版本轨迹
PostgreSQL 18 新增此函数,共 1 条签名。
说明
生成一个版本 4(随机)的 UUID
uuidv4 ( ) → uuid生成一个版本 4(随机)的 UUID
签名
PostgreSQL 18.7 里 uuidv4 的 1 条签名,按上游手册顺序排列。参数名用斜体,类型用弱化色, 之后是返回类型。中文说明来自同版本手册与审阅译文,悬停可查看每条说明的来源。
-
uuidv4( ) →uuid生成一个版本 4(随机)的 UUIDgen_random_uuid()5b30857f-0bfa-48b5-ac0b-5c64e28078d1uuidv4()b42410ee-132f-42ee-9e4f-09a6485c95b8
演化历史
相邻两个大版本之间的差异,新的在前。版本号链到该版的签名。
-
PostgreSQL 18 ← 17 新增此函数
PostgreSQL 18 起可用
签名矩阵
每条签名在给出了签名的 3 个版本里的存在情况;方格指向该版的签名。只在正文里提到此函数、没有给出签名的版本不列进来,上面的版本轨迹里仍然有它们。签名文本在 PostgreSQL 13 前后写法不同,跨越那一跳的同一条签名会显示成两行。
存在 不存在
同组函数
| 函数 | 签名 | 主签名 | 版本变动 | 最近变更 |
|---|---|---|---|---|
gen_random_uuid |
1 | gen_random_uuid ( ) → uuid |
181 次 | |
| 生成一个版本 4(随机)的 UUID | 现存 | |||
uuid_extract_timestamp |
1 | uuid_extract_timestamp ( uuid ) → timestamp with time zone |
181 次 | |
| 从版本 1、6 或 7 的 UUID 中提取 timestamp with time zone。对于其他版本,该函数返回 null。注意,提取出的时间戳不一定与 UUID 生成时刻完全一致;这取决于生成该 UUID 的实现。 | 现存 | |||
uuid_extract_version |
1 | uuid_extract_version ( uuid ) → smallint |
181 次 | |
| 从符合 RFC 9562 所描述某一变体的 UUID 中提取版本号。对于其他变体,该函数返回 null。例如,对于由 gen_random_uuid() 生成的 UUID,该函数将返回 4。 | 现存 | |||
uuidv4 |
1 | uuidv4 ( ) → uuid |
— | |
| 生成一个版本 4(随机)的 UUID | 现存 | |||
uuidv7 |
1 | uuidv7 ( [ shift interval ] ) → uuid |
— | |
| 生成一个版本 7(按时间排序)的 UUID。其时间戳由 UNIX 时间戳(毫秒精度)加上亚毫秒时间戳和随机值计算得到。可选参数 shift 会按给定的 interval 偏移计算出的时间戳。不接受无穷 interval 值。偏移后的时间戳必须位于 UUID 版本 7 的 48 位毫秒时间戳字段所支持的范围内:从 1970-01-01 00:00:00 UTC 到大约 10889 年。如果结果时间戳超出此范围,则会引发错误。 | 现存 | |||