嗨,我想知道为什么这个语句在 mySQL 中有效
SELECT COUNT(*) AS `numrows`
FROM (`myTable`)
WHERE DATE_FORMAT(creationDateTime, '%m/%d/%Y') BETWEEN '02/21/2011' AND '03/20/2011'
但这不是
SELECT COUNT(*) AS `numrows`
FROM (`myTable`)
WHERE DATE_FORMAT(creationDateTime, '%m/%d/%Y') BETWEEN '12/21/2010' AND '03/20/2011'
第一条语句返回行数的“xx”计数,而第二条语句返回“0”
我看到的唯一区别是“开始”日期是 2010 年,而“结束”日期是 2011 年。为了测试这是否是我从 '12/31/2010' 查询的问题,它仍然给了我 0 个结果,但是当我将开始日期设置为“01/01/2011”时,它给了我在该时间段内创建的记录数。
关于 mySQL 的 BETWEEN 和使用不同年份的日期,我有什么遗漏吗?
谢谢您的帮助!