Mysql SQL查询,按介于两个日期之间的日期范围查找所有数据

Mysql SQL查询,按介于两个日期之间的日期范围查找所有数据,mysql,sql,Mysql,Sql,我需要找到给定日期范围内的所有任务,其中每个日期范围介于开始日期和到期日期之间。假设输入为2016年5月10日至2016年5月12日 Task Table id name start_date expiry_date 1 Task 1 09-05-2016 11-05-2016 2 Task 2 10-05-2016 13-05-2016 3 Task 3 11-05-2016 12-05-2016 4 Task 4 17-05-2016 20-05-

我需要找到给定日期范围内的所有任务,其中每个日期范围介于开始日期和到期日期之间。假设输入为2016年5月10日至2016年5月12日

Task Table
id  name    start_date  expiry_date
1   Task 1  09-05-2016  11-05-2016
2   Task 2  10-05-2016  13-05-2016
3   Task 3  11-05-2016  12-05-2016 
4   Task 4  17-05-2016  20-05-2016
5   Task 5  18-05-2016  26-05-2016

希望开始日期总是小于结束日期

id  name    start_date  expiry_date
1   Task 1  09-05-2016  11-05-2016
2   Task 2  10-05-2016  13-05-2016
3   Task 3  11-05-2016  12-05-2016 
从开始日期为'10-05-2016'的任务中选择*

您可以使用此条件:

在哪里
StartA=StartB
您的查询应该是:

WHERE 
    StartA <= EndB 
    AND EndA >= StartB
选择*
来自tbl
哪里
开始日期='10-05-2016'

SELECT*FROM tbl WHERE start_date='10-05-2016'
如果mySQL不支持
BETWEEN
编辑:mySQL确实支持
BETWEEN
我读错了这个问题:)
WHERE 
    StartA <= EndB 
    AND EndA >= StartB
SELECT *
FROM tbl
WHERE
    start_date <= '12-05-2016'
    AND expiry_date >= '10-05-2016'