函数名称

TO_UNIX_TIMESTAMP
TO_UNIX_TIMESTAMP

功能描述

TO_UNIX_TIMESTAMP
TO_UNIX_TIMESTAMP
函数用于将不同类型的日期时间表达式转换为 Unix 时间戳(UTC)。Unix 时间戳是从 '1970-01-01 00:00:00' UTC 到指定时间所经过的总秒数。如果提供了
fmt
fmt
参数,则按照该格式解析
expr
expr
;否则,按照默认的 'yyyy-MM-dd HH:mm:ss' 格式解析。如果
expr
expr
中的日期时间非法或无法解析,函数将返回 null。

参数说明

  • expr
    expr
    (string): 需要转换的日期时间字符串。
  • fmt
    fmt
    (string, 可选): 日期时间字符串的格式。默认为 'yyyy-MM-dd HH:mm:ss'。

返回结果

返回一个 bigint 类型的 Unix 时间戳。

使用示例

  1. 将默认格式的字符串转换为 Unix 时间戳:

SELECT TO_UNIX_TIMESTAMP('2022-02-01 10:23:32') as res; +------------+ | res | +------------+ | 1643682212 | +------------+

  1. 将自定义格式的字符串转换为 Unix 时间戳:

SELECT TO_UNIX_TIMESTAMP('2022/02/01 10:23:32.121', 'yyyy/MM/dd HH:mm:ss.SSS') as res; +------------+ | res | +------------+ | 1643682212 | +------------+

  1. 转换非法日期时间字符串:

SELECT TO_UNIX_TIMESTAMP('2022-02-30 10:23:32'); +------+ | res | +------+ | null | +------+

注意事项

  • fmt
    fmt
    参数未提供或其格式不正确时,将使用默认格式进行解析。
  • 如果输入的日期时间字符串无法解析或非法,函数将返回 null。
  • 请确保
    expr
    expr
    参数中的日期时间字符串与
    fmt
    fmt
    参数(如有)的格式相匹配,以获得正确的转换结果。

联系我们
预约咨询
微信咨询
电话咨询