我将时间戳存储在表中,该表以字符串格式存储。不过,我正在尝试创建一个视图,将它们保存为时区。我使用了以下查询:
SELECT ((timestamp '2015-10-24 16:38:46') AT TIME ZONE 'UTC') AT TIME ZONE 'CST';然而,我注意到我的数据在表中也有CST和IST格式。所以我的问题是
提供表值的屏幕截图:

发布于 2018-04-06 08:32:00
我无法找到任何解决方案,这可以给我一个单一的代码来处理多个时区。我用一个简单的例子来解决这个问题。但是这是不可扩展的,因为我的DB可以添加新的时区。
CASE
WHEN right(t2.stream_item_date,3) = 'UTC' THEN to_timestamp(t2.stream_item_date, 'YYYY-MM-DD hh24:mi:ss') at time zone 'CST'
WHEN right(t2.stream_item_date,3) = 'CST' then to_timestamp(t2.stream_item_date, 'YYYY-MM-DD hh24:mi:ss') at time zone 'CST'
WHEN right(t2.stream_item_date,3) = 'CDT' then to_timestamp(t2.stream_item_date, 'YYYY-MM-DD hh24:mi:ss') at time zone 'CDT'
END as stream_item_date可以随意加进去。
https://stackoverflow.com/questions/49667780
复制相似问题