如何更改 Amazon Redshift 中的默认时区?

Jor*_*rge 5 sql amazon-web-services amazon-redshift

默认情况下将时间戳列设置为 SYSDATE ,并将其存储为UTC。是否可以更改时区,以便 SYSDATE 将日期和时间存储到不同的时区?

到目前为止,我已经检查了SET命令,但我不确定是否可以使用它来更改时区。

小智 5

基本上,答案是否定的。根据文档

用户表和 Amazon Redshift 系统表中的 TIMESTAMP 值都是 UTC,而不是本地时间。

注意 不支持带有时区的时间戳。

如果您需要查询返回不同时区的数据,您可以使用CONVERT_TIMEZONE函数,使用常量时区值(或查询参数),或将结果连接到包含所需时区的配置表。

  • 澄清一下,支持带有时区信息的时间戳,您可以使用 TIMESTAMPTZ 类型而不是 TIMESTAMP。这本质上是时区信息的别名。请参阅此处的文档 - https://docs.aws.amazon.com/redshift/latest/dg/r_Datetime_types.html#r_Datetime_types-timestamptz (2认同)