• Worst Performing Queries


    WITH TMP AS
    (
    	SELECT TOP 100
    		CAST(SUM(s.total_elapsed_time) / 1000000.0 AS DECIMAL(10, 2)) AS [Total Elapsed Time in S],
    		SUM(s.execution_count) AS [Total Execution Count],
    		CAST(SUM(s.total_worker_time) / 1000000.0 AS DECIMAL(10, 2)) AS [Total CPU Time in S],
    		CAST(SUM(s.total_worker_time) / SUM(s.execution_count) / 1000.0 AS DECIMAL(10, 2)) AS [Avg CPU Time in MS],
    		SUM(s.total_logical_reads) AS [Total Logical Reads],
    		CAST(CAST(SUM(s.total_logical_reads) AS FLOAT) / CAST(SUM(s.execution_count) AS FLOAT) AS DECIMAL(10, 2)) AS [Avg Logical Reads],
    		SUM(s.total_logical_writes) AS [Total Logical Writes],
    		CAST(CAST(SUM(s.total_logical_writes) AS FLOAT) / CAST(SUM(s.execution_count) AS FLOAT) AS DECIMAL(10, 2)) AS [Avg Logical Writes],
    		SUM(s.total_clr_time) AS [Total CLR Time],
    		CAST(SUM(s.total_clr_time) / SUM(s.execution_count) / 1000.0 AS DECIMAL(10, 2)) AS [Avg CLR Time in MS],
    		CAST(SUM(s.min_worker_time) / 1000.0 AS DECIMAL(10, 2)) AS [Min CPU Time in MS],
    		CAST(SUM(s.max_worker_time) / 1000.0 AS DECIMAL(10, 2)) AS [Max CPU Time in MS],
    		SUM(s.min_logical_reads) AS [Min Logical Reads],
    		SUM(s.max_logical_reads) AS [Max Logical Reads],
    		SUM(s.min_logical_writes) AS [Min Logical Writes],
    		SUM(s.max_logical_writes) AS [Max Logical Writes],
    		CAST(SUM(s.min_clr_time) / 1000.0 AS DECIMAL(10, 2)) AS [Min CLR Time in MS],
    		CAST(SUM(s.max_clr_time) / 1000.0 AS DECIMAL(10, 2)) AS [Max CLR Time in MS],
    		COUNT(1) AS [Number of Statements],
    		MAX(s.last_execution_time) AS [Last Execution Time],
    		s.plan_handle AS [Plan Handle]
    	FROM
    		sys.dm_exec_query_stats s
    		
    	 --Most CPU consuming
    	GROUP BY s.plan_handle ORDER BY SUM(s.total_worker_time) DESC
    		
    	-- Most read+write IO consuming
    	--GROUP BY s.plan_handle ORDER BY SUM(s.total_logical_reads + s.total_logical_writes) DESC
    		
    	-- Most write IO consuming
    	--GROUP BY s.plan_handle ORDER BY SUM(s.total_logical_writes) DESC
    		
    	-- Most CLR consuming
    	--WHERE s.total_clr_time > 0 GROUP BY s.plan_handle ORDER BY SUM(s.total_clr_time) DESC
    )
    SELECT
    	TMP.*,
    	st.text AS [Query],
    	qp.query_plan AS [Plan]
    FROM
    	TMP
    OUTER APPLY
    	sys.dm_exec_query_plan(TMP.[Plan Handle]) AS qp
    OUTER APPLY
    	sys.dm_exec_sql_text(TMP.[Plan Handle]) AS st
    

      

  • 相关阅读:
    学习python第二天数据库day1
    学习python第一天总纲
    Mac 键盘快捷键
    报错 Filtered offsite request
    mysql 顺序问题
    implode 把数组 组成一个字符串
    TP view中跳转到某个控制器
    生成商品的唯一货号
    数组排序
    判断文件是否存在 删除文件
  • 原文地址:https://www.cnblogs.com/zping/p/4835321.html
Copyright © 2020-2023  润新知