本帖最后由 netxuning 于 2011-07-22 13:40:01 编辑

解决方案 »

  1.   

    表结构怎样的?另外表的数据有多少呢(虽然这个不影响 explain)?
      

  2.   

    另外,直接select的话,速度是否差异很大?
      

  3.   

    楼主的现象确实很奇怪。
    id字段为主键,那么id必然是已经排好序的。对于这样的LIMIT操作,只需要直接定位到起始位置(48),然后往后移动30条记录,就可以把数据都取出来,然后就终止查询,返回结果,根本不需要全表扫描。适用“早期终止”楼主多测试几次看。
    另外说下用的是什么引擎?
      

  4.   

    承蒙楼上各位关注,我对比了没有问题的服务器,存在问题的mysql版本是5.1.50。 等我换了版本试试后,再跟大家说说具体情况。
      

  5.   

    show index ... 贴出来分析一下。
      

  6.   

    问题解决了,换上5.1.37就可以了。 此问题应是5.1.50的bug.