>  기사  >  백엔드 개발  >  如何把表的数据快速地查询出来

如何把表的数据快速地查询出来

WBOY
WBOY원래의
2016-06-13 10:35:191171검색

求助:怎么把表的数据快速地查询出来
因为自己的原因,在团购表整个表里的数据有二个字段出了错,需要把数据表里取出来,在更新到团购表里,
因为数据量比校大,我没有选择更新,
我是建了另外一张表B,我用程序控制这样的SQL循环整个团购表A
select * from tuangouA limit 0,600;
select * from tuangouA limit 600,600;
select * from tuangouA limit 1200,600;

在初使的候,速度还挺快的,但是当基数到达 


select * from tuangouA limit 6000000,10;

我取10条数据,都要4秒多钟, 以这样的速度下去,不知道要运行到什么时候啊,6百万刚好我表A一半的数据而己,所以我特别着急,但是又找不到其它的方法。
各位大侠们,你们有没有什么好的方法没有啊。



------解决方案--------------------
设 id 为主键,且 id 连续
select * from tuangouA where id>= 6000000 limit 10;

------解决方案--------------------
你每次取得数据也少了点吧 每次取个10000条 循环的次数也少多了吧
------解决方案--------------------

探讨

设 id 为主键,且 id 连续
select * from tuangouA where id>= 6000000 limit 10;

------解决方案--------------------
数据过多 可以分表
------解决方案--------------------
又不是条件查询,慢也没办法。
------解决方案--------------------
如果你不是要选择全部的话不要用select * 用 select 字段 from 这样会select * 快不过要用到order by的比较明显
------解决方案--------------------
可以参考《高性能MySQL(第2版)中文版》如下段落
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.