我需要sql中的查询.
如果我有两列STARTDATE和END_DATE.
我想选择日期介于这两个日期之间的所有行.
如果我有两列STARTDATE和END_DATE.
我想选择日期介于这两个日期之间的所有行.
e.g.: startdate = 1/1/2011 AND enddate = 2/2/2011.
解决方法
SELECT * FROM table1 WHERE '2011-01-01' BETWEEN table1.startdate AND table1.enddate
用now()或参数或其他替换显式日期.
如果enddate未定义为NOT NULL,您可以执行以下操作:
SELECT * FROM table1 WHERE '2011-01-01' BETWEEN table1.startdate AND COALESCE(table1.enddate,NOW())