Mysql查询时间区间数据

我有一张请假申请表,里面有StartTime(请假开始时间),EndTime(请假结束时间),前端查询数据的时候会传一个区间,
比如说我要查询10.01到10.31的所有请假数据,那么请假时间为9.25到10.3 的也要查出来,10.30到11.04的也要查出来,这种
Sql如何写,求大神指点。

1、StartTime>=10.01 AND EndTime<=10.31
2、StartTime<=10.01 AND StartTime>=10.01 AND EndTime<=10.31
3、StartTime>=10.01 AND StartTime<=10.31 AND EndTime>=10.31
4、StartTime<=10.01 AND EndTime>=10.31

四种组合都能满足你说的情况,之间用or就可以连起来,看着比较复杂,你画时间轴能看出来

没理解你的意思,传的时间是10.01-10.31,获取数据区间是9.25-11.4?

或者用简单点的
1、StartTime>=10.01 AND StartTime<=10.31
2、EndTime>=10.01 AND EndTime<=10.31

2种情况一种满足即可。开始与结束只要在这个区间一个就满足

(startTime >= 10.01 and startTime <=10.31) or (endTime >= 10.01 and endTime <=10.31)

你的意思就是StartTime 在前端传过来的时间区间内,或者endTime 在前端传过来的时间区间内,那就这样喽:
(startTime >= 10.01 and startTime <=10.31) or (endTime >= 10.01 and endTime <=10.31)

前后各多加七天就行了

不知道我是不是读懂了你的意思,用between。请假开始或者结束时间在设置的时间段内

(StartTime>=10.01 AND EndTime<=10.31) OR (StartTime>=10.31 OR EndTime<= 10.1)