mysql最快分页方法_MySQL

WBOY
リリース: 2016-05-31 08:46:48
オリジナル
907 人が閲覧しました
ログイン後にコピー
总所周知,mysql分页是这样写的:

select * from 'yourtable' limit start,rows
ログイン後にコピー

现在我数据库一张表里面有9969W条数据,表名叫tweet_data

select count(*) from tweet_data
ログイン後にコピー

执行第一条sql语句,就查6000000条开始的10条,看查询时间

58s这得有多慢!

解决方案一、

有人立马想到了利用索引来提高效率,那么我们就利用主键吧,所以,便有了下面这种sql

select *from tweet_data where id >=(select id from tweet_data limit 60000000,1)limit 10
ログイン後にコピー

看看效果

果然没有多大提升,但是如果数据量在百万级别的话,效率还是可以多番几倍,但是!这明显没有达到我们的要求

那么就有了下面这种sql语句

select * from tweet_data where id_auto_increase between 60000000 and 60000010

有图为证!

在这里我们只对一张表上的数据进行了操作,而且数据量在1亿条左右,但是如果我们的数据量更大呢?

那么就要涉及到更多知识了!小弟拙见!

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート