MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-

MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-
--得到最耗时的前N条T-SQL语句   
  
--适用于SQL SERVER 2005及其以上版本   
  
--给N赋初值为30   
declare @n int set @n=30   
  
;with maco as   
(     
    select top (@n)  
        plan_handle,  
        sum(total_worker_time) as total_worker_time ,  
        sum(execution_count) as execution_count ,  
        count(1) as sql_count  
    from sys.dm_exec_query_stats group by plan_handle  
    order by sum(total_worker_time) desc  
)  
select  t.text ,  
        a.total_worker_time ,  
        a.execution_count ,  
        a.sql_count  
from    maco a  
        cross apply sys.dm_exec_sql_text(plan_handle) t  
          
/* 结果格式如下  
text     total_worker_time  execution_count   sql_count  
-------- ------------------ ----------------- ---------   
内容略  
*/  
MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-

 

MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-,布布扣,bubuko.com

MS SQL Server 如何得到执行最耗时的前N条T-SQL语句-

上一篇:oracle常用的复合数据类型 : BULK COLLECT(成批聚合类型)和数组集合type类型is table of 表%rowtype index by binary_integer


下一篇:MySQL完全备份、增量备份与恢复[转]