首页 > 技术文章 > 如何查询当前时间是否在某个时间段内

hanby 2021-01-23 15:46 原文

select * from table where starttime<=curtime() and endtime>=curtime();

 

开始时间小于结束时间 (时间段在一天内)
开始时间大于结束时间 (时间段跨天<不在同一天>)
select id, case when starttime<=endtime then 1 else 0 end as s1
from table
where  (s1=1)  and  curtime() >= starttime and curtime() <= endtime ;
untion all
select id, case when starttime<=endtime then 1 else 0 end as s1
from table
where  (s1=0)  and  curtime() <= starttime and curtime() >= endtime ;

 

推荐阅读