最近想留出一些时间对系统中的一些sql语句做一下优化,包括索引的优化。在此贴出一些测试sql 和测试结果。
#mysql5.1 #表中数据100000条 #表t_group_topic.id 自增主键 #以下通过不同的查询方式 和 在created_at 有无索引测试结果 select * from t_group_topic order by created_at desc limit 0,40 taking 312ms no index taking 0.9ms yes index select * from t_group_topic order by created_at desc limit 50000,40 taking 627ms no index taking 624ms yes index select * from t_group_topic order by created_at desc limit 90000,40 taking 937 ms no index taking 956 ms yes index select x.* from t_group_topic x inner join (select id from t_group_topic order by created_at desc limit 0,40 ) y on x.id = y.id taking 316 ms no taking 0.8ms yes m t_group_topic x inner join (select id from t_group_topic order by created_at desc limit 50000,40) y on x.id = y.id taking 312ms no taking 19.5ms yes select x.* from t_group_topic x inner join (select id from t_group_topic order by created_at desc limit 90000,40) y on x.id = y.id taking 312 ms no taking 30.2ms yes
从以上信息可以看出,大数据分页查询时最好先过滤要查询的id 再用id做查询条件进行查询。这样可以充分的利用索引。
对order by 关键字构建适当的索引,可以大大提高查询速度。
相关推荐
第2章 风驰电掣——有效缩短SQL优化过程 24 2.1 SQL调优时间都去哪儿了 25 2.1.1 不善于批处理频频忙交互 25 2.1.2 无法抓住主要矛盾瞎折腾 25 2.1.3 未能明确需求目标白费劲 26 2.1.4 没有分析操作难度乱调优...
TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储...
行式引擎按页取数只适用于Oracle,mysql,hsql和sqlserver2008及以上数据库,其他数据库,如access,sqlserver2005,sqlite等必须编写分页SQL。今天我们以Access数据库为例介绍需要写分页SQL的数据库怎样利用行式的...
SQLServer海量数据库的查询优化及分页算法方案
jsp分页、PLSQL中用Group by和Having来实现分组统计、SQL_server_海量数据库查询优化及分页算法、SQL_SERVER数据库中实现快速的数据提取和数据分页、SQLServer 2005下的分页SQL、sql分页查询、sql数据库模糊查询分页...
《Microsoft SQL Server 2008技术内幕:T-SQL查询》全面深入地介绍了Microsoft SQL Server 2008中高级T-SQL查询、性能优化等方面的内容,以及SQL Server 2008新增加的一些特性。主要内容包括SQL的基础理论、查询优化...
《SQL Server海量数据库的查询优化及分页算法方案》,忘了从哪里搞来的。
第2章 风驰电掣——有效缩短SQL优化过程 24 2.1 SQL调优时间都去哪儿了 25 2.1.1 不善于批处理频频忙交互 25 2.1.2 无法抓住主要矛盾瞎折腾 25 2.1.3 未能明确需求目标白费劲 26 2.1.4 没有分析操作难度乱调优...
SQLSERVER高效率分页存储过程,数据量在2千万下查询分页只需要1-2秒,优化良好....
本文介绍了 大数据sql的优化,及大数据分页 性能优化的解决方案
《Microsoft SQL Server 2008技术内幕:T-SQL查询》全面深入地介绍了Microsoft SQL Server 2008中高级T-SQL查询、性能优化等方面的内容,以及SQL Server 2008新增加的一些特性。主要内容包括SQL的基础理论、查询优化...
《Microsoft SQL Server 2008技术内幕:T-SQL查询》全面深入地介绍了Microsoft SQL Server 2008中高级T-SQL查询、性能优化等方面的内容,以及SQL Server 2008新增加的一些特性。主要内容包括SQL的基础理论、查询优化...
利用SQL游标存储过程分页方案,以前用过,应该还行
资源名称:SQL Server 2005 一千万条以上记录分页数据库优化经验总结 资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
经过优化测试的SQL分页存储过程,好!经过优化测试的SQL分页存储过程,好!经过优化测试的SQL分页存储过程,好!
详细探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页!
sql2000分页存储过程优化 列出3个sql2000分页方法 对比执行时间
写程序常用的分页,经典的sql查询例子。
sqlserver2008不支持关键字limit ,所以它的分页sql查询语句将不能用MySQL的方式进行,幸好sqlserver2008提供了top,rownumber等关键字,这样就能通过这几个关键字实现分页。 下面是本人在网上查阅到的几种查询脚本...
传统的mysql分页查询 ...特别是上线后数据量积累比较快,必须重视SQL优化,否则影响系统运行和用户使用体验 性能实验 直接用limit start, count分页语句, 也是我程序中用的方法: select * from table lim