MSSQL如何查看sql语句执行时间判断执行效率

MSSQL如何查看sql语句执行时间判断执行效率,第1张

写程序的人,往往需要分析所写的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())

通过Oracle执行计划可以看到SQL的执行时间。

EXPLAIN PLAN FOR

SELECT * FROM table

SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY)

SQL>set timing on --显示执行时间

SQL>set autorace on ?C显示执行计划

SQL>set autorace on ?C显示执行计划

SQL>set autotrace traceonly ?C只显示执行计划即不显示查询出来的数据

设置完毕后执行SQL语句就会显示执行时间。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6887772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存