ホームページ > バックエンド開発 > PHPチュートリアル > 如何把表的数据快速地查询出来

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

WBOY
リリース: 2016-06-13 10:35:19
オリジナル
1234 人が閲覧しました

求助:怎么把表的数据快速地查询出来
因为自己的原因,在团购表整个表里的数据有二个字段出了错,需要把数据表里取出来,在更新到团购表里,
因为数据量比校大,我没有选择更新,
我是建了另外一张表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版)中文版》如下段落
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート