我需要一个 SQL 查询。
如果我有两列STARTDATE
and END_DATE
.
我想选择日期位于这两个日期之间的所有行。
例如:开始日期 = 1/1/2011 且结束日期 = 2/2/2011。
SELECT * FROM table1
WHERE '2011-01-01' BETWEEN table1.startdate AND table1.enddate
将明确的日期替换为now()
或参数或其他什么。
如果结束日期是not定义为NOT NULL
你可以做:
SELECT * FROM table1
WHERE '2011-01-01' BETWEEN table1.startdate AND COALESCE(table1.enddate, NOW())
See: http://www.1keydata.com/sql/sql-coalesce.html http://www.1keydata.com/sql/sql-coalesce.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)