You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL iso_8601下YEAR TO MONTH间隔P0Y返回PT0S问题

PostgreSQL iso_8601间隔模式下年月类间隔值输出错误

经测试验证,PostgreSQL将intervalstyle参数设置为iso_8601时,YEAR TO MONTH类型的INTERVAL值存在ISO 8601格式渲染异常。

复现步骤

依次执行以下SQL命令即可稳定复现问题:

SET intervalstyle = 'iso_8601';
CREATE TABLE "OE1".T (I INTERVAL YEAR TO MONTH);
INSERT INTO "OE1".T VALUES ('P0Y');
SELECT * FROM "OE1".T;

查询语句的实际执行输出如下:

i
------
 PT0S
(1 row)

问题判定

  • 测试插入值:'P0Y',为符合ISO 8601规范的0年时长间隔表示
  • 预期输出:P0Y
  • 实际输出:PT0S,为ISO 8601规范下0秒时长间隔的表示

实际返回结果和字段的YEAR TO MONTH类型定义、插入的原始值语义均不匹配,不符合ISO 8601时间间隔格式的输出规则。

内容的提问来源于stack exchange,提问作者mark d drake

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 01:24:21