Mysql限制分页优化方法共享

limit手表

还从闫学8 _ visitlimit10000中获取10条数据

select * 10和

select *来自闫学8 _ visitlimit0,10

不是数量级

online也有很多关于极限的五个优化标准,它们都是从MySQL手册翻译过来的,虽然正确但不实用今天,我发现了一篇关于极限优化的文章,非常好。在

中,我们不是直接使用限制,而是首先获取偏移量的id,然后直接使用限制大小来获取数据。根据他的数据,这显然比直接使用极限要好。这里我特别使用数据来测试两种情况(测试环境win2033+p4双核(3千兆赫)+4G内存MySQL 5.0.19)当

1和偏移量相对较小时

从闫学8 _ visitlimit10中选择* 10

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

选择*来自闫学8 _ visitwere vid = (

选择来自闫学8 _ visitto的vid由vidlimit 10决定。1

)限值10

已经运行多次,时间保持在0.0005-0.0006之间,主要是0.0006

结论:当偏移量较小时,最好直接使用限值这显然是子查询的原因当

2和偏移量较大时

从闫学8 _ visitlimit 10000中选择* 10

运行多次。时间保持在大约0.0187

select * from闫学8 _ visi twere vid =(

select vid from闫学8 _ visiOrder by vidlimit 10000,1

)限制10

已运行多次,时间保持在大约0.0061,仅为前者的1/3。可以预期,偏移量越大,后者越好。在

之后,注意修正你的限制声明和优化MySQL对

MySQL的评论是非常重要的另一个最常用和需要优化的是限制MySQL的限制给分页带来了极大的便利,但是当数据量很大时,限制的性能会急剧下降


大家都在看

相关专题