【发布时间】:2019-09-27 15:12:38
【问题描述】:
在 PostgreSQL 中,当查询日期范围字段以获取完全在某个日期之前或之后的范围时,以下哪个模式是更规范的模式?哪个性能更好?
1. 将日期与范围的上限/下限进行比较,并使用小于/大于运算符,例如:
select * from mytable where upper(mydateranges) <= '2000-01-02';
2. 或者,将日期转换为具有无限上限/下限的日期范围,并使用严格的左/严格右运算符,例如:
select * from mytable where mydateranges << '[2000-01-02,]';
以上示例将引用这样创建的表:
create table mytable (mydateranges daterange);
【问题讨论】:
标签: postgresql