Sqlserver 查询语句性能测试

Posted Darren&

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sqlserver 查询语句性能测试相关的知识,希望对你有一定的参考价值。

写程序的人,往往需要分析所写的SQL语句是否已经优化过了,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了。

    通过设置STATISTICS我们可以查看执行SQL时的系统情况。选项有PROFILE,IO ,TIME。介绍如下:

SET STATISTICS PROFILE ON:显示分析、编译和执行查询所需的时间(以毫秒为单位)。 SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数、逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息。 SET STATISTICS TIME ON:显示每个查询执行后的结果集,代表查询执行的配置文件。

     使用方法:打开SQL SERVER 查询分析器,输入以下语句:

SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME ON GO /*--你的SQL脚本开始*/ SELECT [TestCase] FROM [TestCaseSelect] GO /*--你的SQL脚本结束*/ SET STATISTICS PROFILE OFF SET STATISTICS IO OFF SET STATISTICS TIME OFF

效果如图所示:

 

 

 

另外,也可以通过手工添加语句,计算执行时间来查看执行语句花费了的时间,以判断该条SQL语句的效率如何:

declare @d datetime set @d=getdate() /*你的SQL脚本开始*/ SELECT [TestCase] FROM [TestCaseSelect] /*你的SQL脚本结束*/ select [语句执行花费时间(毫秒)]=datediff(ms,@d,getdate())

以上是关于Sqlserver 查询语句性能测试的主要内容,如果未能解决你的问题,请参考以下文章

[转]SQLServer SQL执行效率和性能测试方法总结

性能测试四十一:慢sql和执行计划一

性能测试之数据库篇-查询

OTL 库 - SQL Server - C++ - 性能

如何使用LoadRunner进行Web性能测试

EF+Lambda查询性能测试