【发布时间】:2017-05-26 21:43:46
【问题描述】:
这是我的记录集:
id date
-----------------------
1 2017-01-11
2 2017-01-12
3 2017-01-14
4 2017-01-15
4 2017-01-16
我要查询2017-01-14到2017-01-16日期范围内的所有记录
目前我正在使用:
SELECT * FROM foo WHERE (date='2017-01-14' OR date='2017-01-15' OR date='2017-01-16')
有没有更好的方法(对于更大的范围可能会更快)? 谢谢
PS:我知道我可以使用:
SELECT * FROM foo WHERE date >= '2017-01-14' AND date <= '2017-01-16'
但问题是我不希望每天之间有“间隙”。
【问题讨论】:
-
在SELECT ... WHERE date BETWEEN '2017-01-14' AND '2017-01-17'之间使用;
-
差距?什么样的差距?
-
我的意思是如我的数据所示:有 11,12,13(缺失)、14、.. 所以查询不正确
-
我没有关注。您甚至都没有查询 13。什么是不正确的?
-
您的问题不在于选择日期范围,您的问题在于添加缺失的日期。
标签: mysql