Heim  >  Artikel  >  Datenbank  >  mysql最快分页方法_MySQL

mysql最快分页方法_MySQL

WBOY
WBOYOriginal
2016-05-31 08:46:48907Durchsuche
总所周知,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亿条左右,但是如果我们的数据量更大呢?

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn