我有一个带有“带时区的时间戳”列的表格。我想找到时间戳早于今天的所有行,其中“今天”是在特定时区确定的。
我知道如何使用at time zone
将文字时间戳解释为在某个特定时区,并且我知道如何使用date_trunc
来获取今天的开头。但我不确定如何将它们结合起来以获得我需要的东西。我试过了
select date_trunc('day', current_date at time zone 'cst');
给了我“2015-03-16 00:00:00”,但是我不清楚这个结果使用了什么时区(或者它是否有一个)。如何根据特定时区选择当天的开头?
答案 0 :(得分:7)
它帮助我重新构建了如下问题:中心时区的当前日期和时间是多少?然后,我想要的是那天开始的午夜[在中央时区]。我发现我可以把它写成
current_date::timestamp AT TIME ZONE 'cst'