SELECT TOP 5 query_stats.query_hash, SUM(execution_count) Sum_Execution_Count, SUM(query_stats.total_worker_time) / SUM(query_stats.execution_count) AS Avg_CPU_Time, max(total_logical_reads) Max_Reads, MIN(query_stats.statement_text) AS Statement_TextFROM (SELECT QS.*, 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) AS statement_text FROM sys.dm_exec_query_stats AS QS CROSS APPLY sys.dm_exec_sql_text(QS.sql_handle) as ST) as query_statsGROUP BY query_stats.query_hashORDER BY Avg_CPU_Time desc;