比较PostgreSQL中的日期(Windows中的9.2.4版)时,我一直面临一个奇怪的情况。我的表中有一列说update_date,类型为“没有时区的时间戳”。客户只能在该字段中搜索日期(即:2013-05-03)或带时间的日期(即:2013-05-03 12:20:00)。此列当前所有行的时间戳记值为值,日期部分相同(2013-05-03),但时间部分不同。
当我在本专栏进行比较时,会得到不同的结果。如下所示:
select * from table where update_date >= '2013-05-03' AND update_date <= '2013-05-03' -> No results
select * from table where update_date >= '2013-05-03' AND update_date < '2013-05-03' -> No results
select * from table where update_date >= '2013-05-03' AND update_date <= '2013-05-04' -> results found
select * from table where update_date >= '2013-05-03' -> results found
我的问题是如何使第一个查询成为可能,结果是为什么第三个查询有效但第一个查询不正常?
有人可以帮我吗?提前致谢。
'2013-05-03'::date
和'1 day'::interval
)是否特定于PostgreSQL?