日期:2014-05-16  浏览次数:20447 次

count的数量和 select * 的数量不一致
今天遇到已经怪事
   需要对一个表的全部数据进行处理,但是select * 出来后,最后log显示只处理了75条,可是这个表里面有将近10万条数据的。
   于是进行以下步骤check
   1. select  count(*) from a;
      得到结果是 96486 条数据
    2.select * from a;
      得到 75条数据
    3. select * from a limit 100;
       得到100条数据

  百思不得其解,郁闷。突然,鬼使神差般的,我想起了,这个表是不是坏了。于是
      check table a;
     报告结果显示a表果然坏了。
      于是修复表(用的myisam引擎,表数据量比较小,就直接修复了)
      repair table a;
     一会报告表修复了
 
    然后再处理,报告检索到了97860条,处理了97860条。这就O了。
    但是还是不知道原因,真奇怪。