我这边没发现问题
mysql 5.7 + navicat 12.1 和 sqlyog 12.3.1
检查下表historydata的recordtime列数据类型是datetime还是varchar,如果是varchar,就会出现那个问题,因为字符串04要比1小
select * from historydata WHERE recordtime BETWEEN '2017-12-29 0:00:00' and '2018-1-2 7:00:00'
为什么这个sql语句还能查出这两条数据?真是奇葩。但是我这样写就没问题了:
select * from historydata WHERE recordtime BETWEEN '2017-12-29 0:00:00' and '2018-01-02 7:00:00'
区别就在2018-1-2和2018-01-02,但是为什么,sql语句这么不智能的吗
。。。该怎么解决啊,求大佬告知呀