如何检查的日期范围的日期,两个日期之间坐落于MySQL查询
我有一个日期范围像如何检查的日期范围的日期,两个日期之间坐落于MySQL查询
日期= 2011-10-14 &日期= 2011-10-20
如果我有另一个日期范围
像
- 2011-10-11 - 2011-10-15
- 2011-10-11 - 2011-10-21
- 2011-10-15 - 2011-10-21
- 2011-10-15 - 2011-10-19
- 2011-10-21 - 2011-10-26
我想SQL查询,显示其仅日期之间的上述(2011-10-14 & date to=2011-10-20)
日期[R在于日期范围安格。
这里只2011-10-21 - 2011-10-26
不在于date from=2011-10-14 & date to=2011-10-20
结果必须显示
- 2011-10-11 - 2011-10-15
- 2011-10-11 - 2011-10-21
- 2011-10-15 - 2011-10-21
- 2011-10-15 - 2011-10-19
这些日期
希望你明白我问。
WHERE date_from >= '2011-10-14' AND date_to <= '2011-10-20'
?
但这个如果你有你的列的数据类型设置为DATE
或DATETIME
只会工作
不适用于2011-10-11 - 2011-10-15 2011-10-11 - 2011-10-21 这些日期 – sujal
SELECT * FROM datetable where mydate BETWEEN '2011-10-14' AND '2011-10 20';
mydate在范围内,即 2011-10-11 - 2011-10-15,2011-10-11 - 2011-10-21,2011-10-15 - 2011-10-21,2011-10-15 - 2011-10-19并检查日期是否在2011-10-15 - 2011-10-19(2011-10-16,2011-10-17,2011-10-18,2011-10-19)位于日期= 2011-10-14&date to = 2011-10-20 – sujal
你可以去网上搜索:-)
你就可以通过来的第一个链接是这样的: http://www.c-sharpcorner.com/Blogs/692/
希望以上链接有助于解决您的查询。
或者,你可以给这样的事情:
SELECT * FROM myTBL
WHERE myReqDate NOT BETWEEN '2011-10-14' 和 '2011-10-20'
myReqDate在范围内即2011-10-11 - 2011-10-15 2011-10-11 - 2011-10-21 2011-10 -15 - 2011-10-21 2011-10-15 - 2011-10-19 并检查日期是否类似于例如2011-10-15 - 2011-10-19(2011-10-16,2011-10-17,2011-10-18,2011-10-19)位于*日期从= 2011-10-14&date to = 2011-10-20 * – sujal
首先,你使用什么数据类型? 'Datetime'?而你说你想要在14号和20号之间。所以在所有的本质上,你真的想要> 14? – rzetterberg
另一个日期范围 - 它是什么?他们保存在某个表格中还是通过用户输入提供? – heximal
这些范围如何存储在数据库中?每个在DATE字段的单独列中?或单个字符串中的字符串?你试过什么了? –