相对于当前日期的其他时区的时间戳
来自 PostgreSQL wiki
跳转到导航跳转到搜索
此页面包含生成“昨天洛杉矶上午 9 点”时间戳值的示例。
带时区的时间戳,相对于目标时区中的当前日期
=# select now();
now
-------------------------------
2014-07-05 02:58:03.598569+02
(1 row)
=# select (date_trunc('day', now() AT TIME ZONE 'America/Los_Angeles' - interval '1 day') + time '09:00:00') AT TIME ZONE 'America/Los_Angeles';
timezone
------------------------
2014-07-03 18:00:00+02
(1 row)
不带时区的时间戳,相对于目标时区中的当前日期
=# select now();
now
-------------------------------
2014-07-05 02:58:03.598569+02
(1 row)
=# select (date_trunc('day', now() AT TIME ZONE 'America/Los_Angeles' - interval '1 day') + time '09:00:00');
?column?
---------------------
2014-07-03 09:00:00
(1 row)