我在 PostgreSQL 中保存 tsrange
类型的值时遇到问题,当时只有一个时间间隔是夏令时并且时间间隔小于 1 小时。
例如我想保存一个45分钟长的时间范围["2013-03-09 01:30:00","2013-03-09 01:15:00"]
,但是我得到一个error range lower bound must be less than or equal to range upper bound
有没有办法使用 tsrange
类型将这些时间范围保存到 PostgreSQL 中?
最佳答案
输入必须已经“时区化”,然后转换为timestamp without time zone
select tsrange(
('2013-02-17 01:30:00'::timestamp at time zone 'BRST')::timestamp,
('2013-02-17 01:15:00'::timestamp at time zone 'BRT')::timestamp
);
tsrange
-----------------------------------------------
["2013-02-17 00:30:00","2013-02-17 01:15:00")
关于postgresql - DST 转换值的 tsrange 范围错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27445459/