postgres将数据库中的时间(utc)转换为本地时间

SELECT now() AT TIME ZONE'asia/shanghai';

SELECT (create_date AT TIME ZONE 'utc') AT TIME ZONE 'asia/shanghai' from ticket_spider ORDER BY id desc limit1;

时区的设置参考:

> https://www.cnblogs.com/liangping/p/7610588.html

如果将数据库的时区直接设置成 asia/shanghai 就不用再每次查询时转换时区了,

show timezone;

-- 再执行查询时设置时区
set time zone 'Asia/Shanghai';

-- 现在查询时间加不加时区都一样了,当然查询时的时区要和设置时的时区一样才行
select now();
select now() at time zone 'Asia/Shanghai' ;

-------

补充说明:

如果时间字段带有时区,则当更换数据库的时区时,查询出来的时间会跟着变更,

如果不带时区,则变更时区,查询结果依旧不会改变.  

原文地址:https://www.cnblogs.com/qianxunman/p/12145985.html