2007年至今,无忧网络已成功为上百家企业搭建优质企业平台
咨询电话:400-0335-234
秦皇岛网站建设公司
在线客服
24小时免费咨询电话:0335-3043400
客服时间: 上午8:30点-下午5:00点
首页>>网站知识>>MySQL 百万级分页优化

MySQL 百万级分页优化

2012年12月02日 TAG: MySQL分页优化

以下分享一点我的经验

一般刚开始学SQL的时候,会这样写

SELECT * FROM table ORDER BY id LIMIT 100010;

但在数据达到百万级的时候,这样写会慢死

SELECT * FROM table ORDER BY id LIMIT 100000010;

也许耗费几十秒

网上很多优化的方法是这样的

SELECT * FROM table WHERE id >= (SELECT id FROM table LIMIT 10000001) LIMIT 10;

是的,速度提升到0.x秒了,看样子还行了
可是,还?#30343;?#23436;美的!

以下这句才是完美的!

SELECT * FROM table WHERE id BETWEEN 1000000 AND 1000010;

比上面那句,还要再快5至10倍


另外,如果需要查询 id ?#30343;?#36830;续的一段,最佳的方法就是?#26085;页?id ,然后用 in 查询

SELECT * FROM table WHERE id IN(100001000001000000...);

再分享一点
查询字段一较长字符串的时候,表设计时要为该字段多加一个字段,如,存储网址的字段
查询的时候,不要直接查询字符串,效率低下,应该查诡该字串的crc32或md5


出处:http://www.21andy.com/

点击咨询网站建设客服
无忧网络在线留言
-
发送
取消
新快三开奖走势图