TIMESTAMP

TIMESTAMP
TIMESTAMP
类型用于表示日期和时间戳,可以包含时区信息。默认情况下,时间戳表示为本地时间(TIMESTAMP_LTZ)。所有操作都在当前会话的时区中执行,输出结果也以当前 Lakehouse 所在服务的时区为准。支持用户输入多种格式的时间戳,并自动转换为
TIMESTAMP
TIMESTAMP
类型。输出结果为字符串格式,格式为
'yyyy-MM-dd HH:mm:ss'
'yyyy-MM-dd HH:mm:ss'
。如果用户输入包含毫秒,则输出结果也会包含毫秒。最大精度支持到微秒(µs),实际精度取决于写入时的时间戳精度。

语法

TIMESTAMP | TIMESTAMP_LTZ

示例

  1. 使用默认时间戳格式:

SELECT TIMESTAMP '2022-12-31 00:00:00'; SELECT TIMESTAMP_LTZ '2022-12-31 00:00:00';

  1. 使用不同格式的时间戳:

SELECT TIMESTAMP '2022-12-31 00:00:00.123'; -- 包含毫秒 +------------------------------------+ | TIMESTAMP'2022-12-31 00:00:00.123' | +------------------------------------+ | 2022-12-31 00:00:00.123            | +------------------------------------+ SELECT TIMESTAMP '2022-12-31T00:00:00.123Z'; -- ISO 8601 格式,包含时区信息 +-------------------------------------+ | TIMESTAMP'2022-12-31T00:00:00.123Z' | +-------------------------------------+ | 2022-12-31 08:00:00.123             | +-------------------------------------+

  1. 将字符串转换为时间戳类型:

SELECT CAST('2022-12-31 00:00:00' AS TIMESTAMP); SELECT CAST('2022-12-31 00:00:00' AS TIMESTAMP_LTZ);

  1. 使用不同的精度选项:

SELECT TIMESTAMP '2022-12-31 00:00:00.123456'; -- 微秒精度 SELECT TIMESTAMP '2022-12-31 00:00:00.123'; -- 毫秒精度 SELECT TIMESTAMP '2022-12-31 00:00:00'; -- 秒精度

注意事项

  • 在进行时间戳转换时,请注意时区差异可能导致的误差。
  • 请确保输入的时间戳格式与系统支持的格式相匹配,以免出现错误。

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