我遇到了仅在我们的MySQL 5.1
系统上发生的问题。它在MySql 5.6
.
我有一个有两DateTime
列(“ start
”和“ end
”)的表。我想选择日期在这两列之间或相同的所有行。基本上是这样的:row.start <= MY_DATE_TIME <= row.end
但是当我执行这个...
select * from alerts a
where a.start <= "2019-11-08 00:00:00"
and a.end >= "2019-11-08 00:00:00"
...我还得到一行,其中 a.start 是“2019-10-10 07:40:00”,a.end 是“2019-11-20 23:55:00”。我给定的日期显然超出了该范围,所以我做错了什么?
我也这样尝试过,结果相同:
select * from alerts a
where STR_TO_DATE("2019-11-08 00:00:00", '%Y-%m-%D %T') between a.start and a.end
有任何想法吗?