mysql奇怪问题

使用mysql遇到一个奇怪的问题。
数据表中有一个字段checked,默认情况下其值为1,但是在查询的时候加一个条件checked=1和不加这个条件查询出来的结果不一致。

mysql中查询结果如下:

带checked=1条件查询:


这个查出来的结果明显有问题。不带checked=1条件查询:


这个查出来是正确的结果。

mysql> select softid,softname,softtime from ty_down where checked<>1 order by softtime desc limit 13;
Empty set
mysql> select version();
+----------------------------+
| version()                      |
+----------------------------+
| 5.1.23-rc-community |
+----------------------------+

在另外一台装了mysq5.0,表结构相同,数据量很少的电脑上,执行上面有checked=1条件和没有这个条件的两条sql语句的结果过是相同的!
以前网站刚部署到服务器上时没有这个问题,这两天突然出现新添加的记录在最新列表中查不出来的问题。网站程序应该没问题,同样的程序在另外一台电脑上没有问题。表唯一的区别就是出问题的这台电脑上mysql中这张表的记录有271条记录,没问题的mysql中表只有5条记录。
不知道有没有前辈遇到过这样的情况,我没想明白是怎么回事。路过的朋友如果知道还请告知一下!


原文地址:https://www.cnblogs.com/jdluojing/p/3212416.html