首页 > 代码库 > mysql最快分页方法

mysql最快分页方法

总所周知,mysql分页是这样写的:

</pre><span style="white-space:pre"></span><p><pre name="code" class="sql">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亿条左右,但是如果我们的数据量更大呢?

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