如何检查日期范围的日期位于mysql查询中的两个日期之间

时间:2011-09-05 06:26:24

标签: mysql date range

我有一个像

这样的日期范围

日期= 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
- 2011-10-21 - 2011-10-26

我想要sql查询,它只显示日期位于(2011-10-14 & date to=2011-10-20)日期范围之上的日期范围。

此处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

结果必须显示

{{1}}

这些日期

希望你明白我在问什么。

4 个答案:

答案 0 :(得分:9)

date_from < '2011-10-20' AND date_to > '2011-10-14'

答案 1 :(得分:1)

SELECT * FROM datetable where mydate BETWEEN '2011-10-14' AND '2011-10 20';

答案 2 :(得分:0)

WHERE date_from >= '2011-10-14' AND date_to <= '2011-10-20'

但是只有将列的数据类型设置为DATEDATETIME

时才会有效

答案 3 :(得分:0)

您可以在互联网上搜索: - )

您将遇到的第一个链接是: http://www.c-sharpcorner.com/Blogs/692/

希望上述链接有助于解决您的疑问。

或者,你可以给出这样的东西:

SELECT * FROM myTBL WHERE myReqDate not BETWEEN'2011-10-14''''2011-10-20'