如何查看SqlServer查询语句的执行效率

1 篇文章 0 订阅
1 篇文章 0 订阅

如何查看SqlServer查询语句的执行效率

一:查看执行时间

SQL Server DATEDIFF() 函数

定义和用法

DATEDIFF() 函数返回两个日期之间的时间。
        语法
DATEDIFF(datepart,startdate,enddate)
startdate 和 enddate 参数是合法的日期表达式。
datepart 参数可以是下列的值:

            datepart                 缩写
yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小时hh
分钟mi, n
ss, s
毫秒ms
微妙mcs
纳秒ns

使用方式:(通过这种方式我们可以指定查询时间的数量级)

 

declare @begin_date datetime 
declare @end_date datetime 
select @begin_date = getdate() 
  --此处为需要查询的sql脚本
select @end_date = getdate() 
select datediff( ms,@begin_date,@end_date) as '用时/毫秒'

 二、查看执行效率详细信息

 

使用方式:通过这种方式我们得到更全面的执行信息,比如扫描次数,逻辑读次数,物理读次数,IO耗时,CPU耗时等,有利于我们优化sql语句

SET STATISTICS PROFILE ON 
SET STATISTICS IO ON 
SET STATISTICS TIME ON
GO 
  --此处为需要查询的sql脚本 
GO 
SET STATISTICS PROFILE OFF 
SET STATISTICS IO OFF 
SET STATISTICS TIME OFF

  通过上述方式查询结果如下:

SQL Server 分析和编译时间:
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。 
SQL Server 执行时间: 
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。 
SQL Server 执行时间:
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。 
SQL Server 分析和编译时间:
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。 
表'_XT_USER'。扫描计数1,逻辑读63 次,物理读0 次,预读0 次。 
SQL Server 执行时间:
 CPU 时间= 0 毫秒,耗费时间= 69 毫秒。 (2042 行受影响) 
SQL Server 执行时间:
 CPU 时间= 0 毫秒,耗费时间= 69 毫秒。 (2 行受影响) 
SQL Server 执行时间:
 CPU 时间= 0 毫秒,耗费时间= 69 毫秒。 
SQL Server 分析和编译时间:
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。 
SQL Server 执行时间:
 CPU 时间= 0 毫秒,耗费时间= 0 毫秒。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值