您当前的位置: 首页 > 数据库教程 > MySQL教程 > 网站数据多了分页慢该怎么办?

网站数据多了分页慢该怎么办?

作者:不详 来源:网络 发布时间: 2014-07-23 18:40 点击:
网站数据多了分页慢该怎么办?在使用 MySQL 数据库时大偏移量的数据查询是非常慢的,如何通过优化SQL语句来加速分页查询呢? 工具/原料MySQL 数据库Apache (WEB服务器软件)方法/步骤分析传统分页SQL语句 select * from table limit $offset, 10,当$offset非常大时,例如

网站数据多了分页慢该怎么办?

  网站数据多了分页慢该怎么办?在使用 MySQL 数据库时大偏移量的数据查询是非常慢的,如何通过优化SQL语句来加速分页查询呢?

  工具/原料MySQL 数据库Apache (WEB服务器软件)方法/步骤分析传统分页SQL语句 select * from table limit $offset, 10,当$offset非常大时,例如980000,这时MySQL数据库就要查询980010条数据,然后扔掉前面980000条,这样速度肯定慢了。考虑这样的SQL语句:select `id` from table limit $offset,10 (id为主键),因为ID字段为主键,的以mysql数据库会使用索引,所以即使要查询980010条数据,速度也是相当快的。即然使用索引可以大大提高mysql数据库查询的速度,考虑下面的SQL语句:

  select * from table where id >= (select id from table limit $offset,1) limit 10解释上面的SQL语句:

  首先通过带主键索引的查询获取出$offset后的id号,因为使用了索引所以这个子查询很快,然后通过条件查询出 id>=$offset 的10条数据。

  这样的分页方法在大数据量时比传统分页方法快 N 倍。注意事项低版本的MYSQL数据库不支持子查询
分享到:
本文"网站数据多了分页慢该怎么办?"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4