Skip to content

Instantly share code, notes, and snippets.

@ArseniySavin
Created August 26, 2019 02:44
Show Gist options
  • Save ArseniySavin/45a49704ef5c4f752c26ed686d88e437 to your computer and use it in GitHub Desktop.
Save ArseniySavin/45a49704ef5c4f752c26ed686d88e437 to your computer and use it in GitHub Desktop.
Top higher exception statements
SELECT TOP 10 substring(t.TEXT, qs.statement_start_offset / 2, CASE
WHEN qs.statement_end_offset = - 1
THEN len(t.TEXT)
ELSE (qs.statement_end_offset - qs.statement_start_offset) / 2
END)
,qs.execution_count
,cast(qs.total_worker_time / 1000 AS DECIMAL(18, 2)) AS total_worker_time_ms
,cast(qs.total_worker_time * 1. / qs.execution_count / 1000. AS DECIMAL(18, 2)) AS avg_worker_time_ms
,cast(p.query_plan AS XML) AS query_plan
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) t
CROSS APPLY sys.dm_exec_text_query_plan(qs.sql_handle, qs.statement_start_offset, qs.statement_end_offset) p
ORDER BY qs.total_worker_time DESC
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment