跳到主要内容

unix_seconds:时间戳转秒数

速查结论

unix_seconds(timestamp) 是 Spark SQL 中用于将时间戳转为自 1970-01-01 00:00:00 UTC 以来的秒数的函数。更高精度部分(如毫秒、微秒)会被截断。

语法

unix_seconds(timestamp)

参数说明

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

Examples

> SELECT unix_seconds(TIMESTAMP('1970-01-01 00:00:01Z'));
1

常见报错与避坑指南

  • 精度截断unix_seconds 会截断毫秒、微秒等更高级别的精度,仅返回整数秒。如需微秒级精度,请使用 unix_micros
  • 传入 NULL 值:如果 timestamp 为 NULL,函数返回 NULL,不会报错。
  • 类型不匹配unix_seconds 要求 TIMESTAMP 类型参数。传入字符串时需使用 TIMESTAMP() 进行显式转换。

Since: 3.1.0

📱关注公众号

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

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

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

交流微信二维码

你可能还想看