以下是查询
SELECT * FROM music_history WHERE date1 BETWEEN 2017-06-24 AND 2017-06-01
在phpmyadmin
中运行此查询时,它显示MySQL returned an empty result set (i.e. zero rows). ( Query took 0.0011 sec )
,即使我在数据库中有该日期可用的日期。
这是数据库图像
答案 0 :(得分:0)
在BETWEEN
查询中,两个操作数是有序的。所以,这应该做你想要的:
WHERE date1 BETWEEN '2017-06-01' AND '2017-06-24'
我认为缺少单引号只是一个错字。
我鼓励您以这种方式使用二进制比较来编写查询:
WHERE date1 >= '2017-06-01' AND date1 < '2017-06-25'
即使date1
有时间组件,这也有效。
您可能会发现this blog很有趣。虽然它与SQL Server有关,但它确实适用于任何数据库:
答案 1 :(得分:0)
第一个日期应小于第二个日期。
BETWEEN
可以更改为
WHERE date1 > first AND date1 < second