在项目中偶尔会遇到使用时间段查询数据,数据中包含有开始结束时间,时间有重合就查询出,现做个记录,以免重复费脑
select * from XXX where
((star_time > #{startTime} AND (#{endTime} > end_time OR (#{endTime} > star_time AND #{endTime} < end_time)))
OR
(star_time < #{startTime} AND (#{endTime}>end_time OR (#{startTime} > star_time AND #{startTime} < end_time))))