PostgreSQL提取DOW和改变时区

时间:2013-07-17 06:51:13

标签: sql postgresql

我有以下查询:

SELECT 
extract(DOW FROM created_at) as DOW, --Sunday is 0, Saturday is 6--
count(*)
FROM 
zendesk_tickets z
WHERE 
city = 'Los Angeles'
AND 
created_at > '2013-07-08 07:00:00'
AND 
created_at < '2013-07-15 07:00:00'
AND tags NOT LIKE '%m_no_description%'
AND issue_type NOT IN ('Driver Account::Spam', 'Driver Trip Feedback::Wrong address    shown')
AND z.group like '%Driver Support'
AND z.group <> 'Driver Support'
GROUP BY DOW
ORDER BY DOW ASC

哪个输出:

DOW       COUNT
0          52
1          251
2          163
3          117
4          155
5          156
6          79

但是,我的数据库中的所有时间都以UTC标记时间戳。无论如何要改变它以使带时间戳的数据出现在PST(太平洋标准时间)中,这是落后7小时?

1 个答案:

答案 0 :(得分:3)

select created_at at time zone 'PST'
from zendesk_tickets;

如果您还想使用该时区比较 where子句中的值,则需要在每个表达式中使用at time zone 'PST'