我想选择介于某个日期范围之间的行,我尝试了以下查询,但它不起作用。
SELECT * FROM tbl WHERE DATE_FORMAT(date_col, '%2011-%c-%e') BETWEEN '2011-11-28' AND '2011-12-5'
似乎BETWEEN关键字在日期上无效。请问如何获得结果?感谢
答案 0 :(得分:9)
如果您想比较日期,则无需使用DATE_FORMAT
。
SELECT *
FROM tbl
WHERE DATE(date_col) BETWEEN '2011-11-28' AND '2011-12-05'
假设您使用DATE_FORMAT(date_col, '%Y-%c-%e')
答案 1 :(得分:4)
SELECT * FROM tbl WHERE DATE_FORMAT(date_col, '%Y-%m-%d') BETWEEN '2011-11-28' AND '2011-12-5'