sql server 查看执行效率低下的语句

就是在测量功能时,先以下命令清除sql server的缓存

dbcc freeProcCache

在点击某个按钮,执行完后,再执行下面语句,就可以知道系统运行什么Sql和多少次了,其主要慢语句是那些了;

SELECT  creation_time  N ' 语句编译时间 '
        ,last_execution_time  N
' 上次执行时间 '
        ,total_physical_reads N
' 物理读取总次数 '
        ,total_logical_reads
/ execution_count N ' 每次逻辑读次数 '
        ,total_logical_reads  N
' 逻辑读取总次数 '
        ,total_logical_writes N
' 逻辑写入总次数 '
        ,execution_count  N
' 执行次数 '
        ,total_worker_time
/ 1000  N ' 所用的CPU总时间ms '
        ,total_elapsed_time
/ 1000   N ' 总花费时间ms '
        ,(total_elapsed_time 
/  execution_count) / 1000   N ' 平均时间ms '
        ,
SUBSTRING (st. text , (qs.statement_start_offset / 2 +   1 ,
         ((
CASE  statement_end_offset 
          
WHEN   - 1   THEN   DATALENGTH (st. text )
          
ELSE  qs.statement_end_offset  END  
            
-  qs.statement_start_offset) / 2 +   1 ) N ' 执行语句 '
FROM  sys.dm_exec_query_stats  AS  qs
CROSS  APPLY sys.dm_exec_sql_text(qs.sql_handle) st
where   SUBSTRING (st. text , (qs.statement_start_offset / 2 +   1 ,
         ((
CASE  statement_end_offset 
          
WHEN   - 1   THEN   DATALENGTH (st. text )
          
ELSE  qs.statement_end_offset  END  
            
-  qs.statement_start_offset) / 2 +   1 not   like   ' %fetch% '
ORDER   BY   total_elapsed_time  /  execution_count  DESC ;

转载于:https://www.cnblogs.com/Randy0528/archive/2010/11/29/1891401.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值