uuid:生成UUID字符串
速查结论
uuid() 是 Spark SQL 中用于生成一个 36 字符的通用唯一识别码(UUID)字符串的函数。
语法
uuid()
参数说明
| 参数 | 说明 |
|---|---|
| 无 | 该函数不接受任何参数。 |
返回值以规范的 36 个字符的 UUID 字符串形式返回(格式:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。
提示:这个函数是非确定性的。
Examples
> SELECT uuid();
46707d92-02f4-4817-8116-a4c3b23e6266
常见报错与避坑指南
- 非确定性:每次调用
uuid()都会生成不同的值,因此不能用于需要确定性结果的场景(如物化视图的增量刷新)。 - 无法作为主键排序依据:UUID 是随机生成的,不具备单调递增特性。如果用作主键且后续需要按生成顺序排序,建议改用
monotonically_increasing_id()或时间戳。 - 字符串长度固定:返回值始终为 36 个字符的标准 UUID 格式。若需要不带连字符的紧凑格式,可使用
REPLACE(uuid(), '-', '')。
Since: 2.3.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

💬加群交流
备注「数据仓库技术」加入社群,每日一道大厂SQL真题
