如何在Prestosql中将包含日期和时间的时间戳字段转换为本地时间?字段看起来像
Region ID | Start Time utc | End Time utc
abc 2019-04-26 20:00:00.000 2019-04-26 23:00:00.000
cdx 2019-02-27 23:30:00.000 2019-02-28 01:00:00.000
我有Region IDS所以如果我需要或者如果它更容易我可以在查询中输入我需要该行的时区的ID。
我想返回该时区的本地开始和结束时间。
查询是
SELECT table1.*
FROM table1
WHERE table1.day = date '2019-04-03' AND
NOT EXISTS (SELECT 1
FROM table2
WHERE table1.id = table2.id AND
table1.timestamp >= table2.start_time AND
table1.timestamp <= table2.end_time
)
表2是我想要转换为当地时间的开始和结束时间...
如果utc时间在开始和结束时间的not exists子句中,我将如何将其更改为本地时间?并非所有时代都是美国同样的时区?我可以使用区域ID字段将该区域ID链接到时区我可以使用吗?
SELECT timestamp '2012-10-31 01:00 UTC' AT TIME ZONE 'America/Los_Angeles';
2012-10-30 18:00:00.000 America/Los_Angeles
由于您当前的时间戳已经是UTC,您可以添加时间戳的位置并获得所需的结果。
希望这可以帮助