FUNCTIONUUID 函数
uuidv7
生成一个版本 7(按时间排序)的 UUID。
Generates a version 7 (time-ordered) UUID.
UUID 函数 引入 18 现存至 20 devel 1 条签名 0 次签名变更
- 分组
- UUID 函数
- 签名数
- 1 条
- 引入版本
- 18
- 状态
- 现存
- 签名变更
- 未变过
- 本版来源
- 本站译文
版本轨迹
PostgreSQL 18 新增此函数,共 1 条签名。
签名
PostgreSQL 18 里 uuidv7 的 1 条签名,按上游手册顺序排列。参数名用斜体,类型用弱化色, 之后是返回类型。说明取自本站手册译文:标「沿用」的借用了另一版的译文,标「EN」的本站暂无译文、按英文原文显示。
-
uuidv7( [shiftinterval] ) →uuid生成一个版本 7(按时间排序)的 UUID。其时间戳由 UNIX 时间戳 (毫秒精度)加上亚毫秒时间戳和随机值计算得到。可选参数shift会按给定的interval偏移计算出的时间戳。 不接受无穷 interval 值。偏移后的时间戳必须位于 UUID 版本 7 的 48 位毫秒时间戳字段所支持的范围内:从 1970-01-01 00:00:00 UTC 到大约 10889 年。如果结果时间戳超出此范围,则会引发错误。uuidv7()019535d9-3df7-79fb-b466-fa907fa17f9e
演化历史
相邻两个大版本之间的差异,新的在前。版本号链到该版的签名。
-
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。 | 现存 | |||
uuid_extract_version |
1 | uuid_extract_version ( uuid ) → smallint |
181 次 | |
| 从符合 RFC 9562 所描述某一变体的 UUID 中提取版本号。 | 现存 | |||
uuidv4 |
1 | uuidv4 ( ) → uuid |
— | |
| 生成一个版本 4(随机)的 UUID | 现存 | |||
uuidv7 |
1 | uuidv7 ( [ shift interval ] ) → uuid |
— | |
| 生成一个版本 7(按时间排序)的 UUID。 | 现存 | |||