PostgreSQL 11.14调用带时区参数的date_trunc函数报错咨询
PostgreSQL 11.14中date_trunc时区参数报错问题解答
- 带第三个时区参数的
date_trunc是PostgreSQL的新增特性,你的11.14版本不支持该语法。 - 该3参数版本的
date_trunc是在PostgreSQL 12中引入的,11及更早版本仅支持2参数形式:date_trunc(field, source)。 - 你可以在当前环境执行以下SQL验证参数支持情况:
执行结果会显示SELECT proname, pronargs FROM pg_proc WHERE proname = 'date_trunc';date_trunc只有接受2个参数的重载,没有3参数版本。 - 11.x版本的替代实现方案:若需按指定时区截断时间,可先转换时区再截断,最后转回带时区格式,示例:
SELECT date_trunc('day', TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40+00' AT TIME ZONE 'Australia/Sydney') AT TIME ZONE 'Australia/Sydney';
内容的提问来源于stack exchange,提问作者TheProgrammer
相关产品推荐
相关产品推荐

