make_timestamp

make_timestamp

make_timestamp 介绍

make_timestamp(year, month, day, hour, min, sec[, timezone]) - 根据年、月、日、小时、分、秒和时区字段创建时间戳。结果数据类型与配置值 spark.sql.timestampType 一致。如果配置 spark.sql.ansi.enabled 设置为 false,则在输入无效时函数返回 NULL。否则,将抛出错误。

参数:

  • year - 要表示的年份,从 1 到 9999
  • month - 要表示的月份,从 1(一月)到 12(十二月)
  • day - 要表示的月份中的天数,从 1 到 31
  • hour - 要表示的小时数,从 0 到 23
  • min - 要表示的分钟数,从 0 到 59
  • sec - 要表示的秒数和其微秒分数,从 0 到 60。该值可以是整数,如 13,或分数,如 13.123。如果 sec 参数等于 60,则秒字段设置为 0,并且在最终时间戳中增加 1 分钟。
  • timezone - 时区标识符。例如,CET,UTC 等。

Examples:

> SELECT make_timestamp(2014, 12, 28, 6, 30, 45.887);
 2014-12-28 06:30:45.887
> SELECT make_timestamp(2014, 12, 28, 6, 30, 45.887, 'CET');
 2014-12-27 21:30:45.887
> SELECT make_timestamp(2019, 6, 30, 23, 59, 60);
 2019-07-01 00:00:00
> SELECT make_timestamp(2019, 6, 30, 23, 59, 1);
 2019-06-30 23:59:01
> SELECT make_timestamp(null, 7, 22, 15, 30, 0);
 NULL

Since: 3.0.0