跳到主要内容

unix_micros:时间戳转微秒数

速查结论

unix_micros(timestamp) 是 Spark SQL 中用于将时间戳转为自 1970-01-01 00:00:00 UTC 以来的微秒数的函数。

语法

unix_micros(timestamp)

参数说明

参数类型说明
timestampTIMESTAMP一个时间戳值,函数将计算该时间戳到 Unix 纪元(1970-01-01 00:00:00 UTC)之间的微秒数。

Examples

> SELECT unix_micros(TIMESTAMP('1970-01-01 00:00:01Z'));
1000000

常见报错与避坑指南

  • 传入 NULL 值:如果 timestamp 为 NULL,函数返回 NULL,不会报错。
  • 类型不匹配unix_micros 要求参数为 TIMESTAMP 类型。若传入字符串,需先用 TIMESTAMP() 进行显式转换。
  • 返回值范围:函数返回 BIGINT 类型,微秒级精度使得数值非常庞大,注意在后续数值运算中可能超出 INT 的范围。

Since: 3.1.0

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

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

交流微信二维码

你可能还想看