首页 > 数据库技术 > 详细

mysql寻呼最快

时间:2015-06-20 20:42:51      阅读:365      评论:0      收藏:0      [点我收藏+]

大家都知道,mysql分页写:

select * from 'yourtable' limit start,rows

如今我数据库一张表里面有9969W条数据。表名叫tweet_data

select count(*) from tweet_data
技术分享技术分享技术分享

运行第一条sql语句,就查6000000条開始的10条,看查询时间技术分享

技术分享

技术分享技术分享

60s这得有多慢!

解决方式一、

有人立刻想到了利用索引来提高效率。那么我们就利用主键吧,所以,便有了以下这样的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亿条左右,可是假设我们的数据量更大呢?

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







mysql寻呼最快

原文:http://www.cnblogs.com/yxwkf/p/4590936.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!