直到“2013-07-31”我才得到结果,而是在 endDate 前一天得到结果。如何在“2013-07-31”中添加一天
select * from employee
where admissiondate>='2013-01-01'
and admissiondate<='2013-07-31'
2013-07-31 12:00:00
既不小于也不完全等于2013-07-31
。
datetime
要修复它,您可以使用从列中删除时间部分date()
select * from employee
where date(admissiondate) between '2013-01-01' and '2013-07-31'
但这不会使用索引。或者像这样添加时间部分
select * from employee
where admissiondate >= '2013-01-01'
and admissiondate <= '2013-07-31 23:59:59'
使用 DATE_ADD() 函数...