当前位置: 首页 > mysql, 数据库 > 正文

mysql limit查询优化

关键字:
1 星2 星3 星4 星5 星 (2 次投票, 评分: 4.50, 总分: 5)
Loading ... Loading ...
baidu_share

MYSQL的优化是非常重要的。其他最常用也最需要优化的就是limit。mysql的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急剧下降。
同样是取10条数据

1
2
select * from news limit 10000,10 和
select * from news limit 0,10

就不是一个数量级别的。
1、offset比较小的时候。

1
select * from news limit 10,10

多次运行,时间保持在0.0004-0.0005之间

1
2
3
Select * From news Where vid >=(
Select vid From news Order By vid limit 10,1
) limit 10

多次运行,时间保持在0.0005-0.0006之间,主要是0.0006
结论:偏移offset较小的时候,直接使用limit较优。这个显然是子查询的原因。
2、offset大的时候。

1
select * from news limit 10000,10

多次运行,时间保持在0.0186之间

1
2
3
Select * From news Where vid >=(
Select vid From news Order By vid limit 10000,1
) limit 10

多次运行,时间保持在0.0061左右,只有前者的1/3。

本文固定链接: http://www.chepoo.com/mysql-limit-optimize-on-many-data.html | IT技术精华网

mysql limit查询优化:等您坐沙发呢!

发表评论