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

WBOY
Lepaskan: 2016-06-13 10:35:19
asal
1226 orang telah melayarinya

求助:怎么把表的数据快速地查询出来
因为自己的原因,在团购表整个表里的数据有二个字段出了错,需要把数据表里取出来,在更新到团购表里,
因为数据量比校大,我没有选择更新,
我是建了另外一张表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版)中文版》如下段落
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan