我正在对我的 postgresql 数据库运行来自 pgAdmin3 的查询。我想知道为什么它返回值但所有预期值。查询是:
SELECT P.SURNAME,
TO_CHAR(TO_DATE(SFE.GRANTDATE,'YYYY-MM-DD'),'DD Mon YY') AS GRANTDATE,
TO_CHAR(TO_DATE(SFE.REVOKEDATE,'YYYY-MM-DD'),'DD Mon YY') AS REVOKEDATE,
SFE.feedname
FROM SYS_FEED SFE,
PRINCIPLE P
WHERE SFE.USERID = P.ID
AND to_date(GRANTDATE,'YYYY-MM-DD') <= to_date('Nov-2006','Mon-YYYY')
GRANTDATE 列是日期类型,包含格式为 2006-09-04 的值。我想返回 GRANTDATE 小于或等于提供的月份年份的所有行。我遇到的问题是它返回所有“小于”匹配行但不返回“等于”行。所以 2006 年 1 月到 2006 年 10 月存在,但 2006 年 11 月不存在。
任何建议都会很棒。