求化简select * from t where ((begintime<endtime and hour(now())<endtime and hour(now())>=begintime) or (begintime>endtime and (hour(now())<endtime or hour(now())>=begintime)))
求化简select * from t where ((begintime<endtime and hour(now())<endtime and hour(now())>=begintime) or (begintime>endtime and (hour(now())<endtime or hour(now())>=begintime)))
3 回答1.7k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
3 回答1.6k 阅读
2 回答976 阅读✓ 已解决
看了一下只有3种情况:
b<=h<e
b>e>h
h>=b>e
select * from t where ((begintime<endtime and hour(now())<endtime and hour(now())>=begintime) or (begintime>endtime and (hour(now())<endtime or hour(now())>=begintime)))
加粗部分可以删除,其他的好像没什么优化的。