Skip to content

Instantly share code, notes, and snippets.

@mikeblas
Created November 27, 2020 15:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikeblas/b9b6b477972563f8483e056fc22d008c to your computer and use it in GitHub Desktop.
Save mikeblas/b9b6b477972563f8483e056fc22d008c to your computer and use it in GitHub Desktop.
SQL Server: show currently running queries by CPU time
-- in flight queries by CPU time
-- author: mike@blaszczak.com
-- Date: 2020-11-27
SELECT s.session_id,
DB_NAME(r.database_id) as DBName,
r.status,
r.blocking_session_id 'Blk by',
r.wait_type,
wait_resource,
r.page_resource,
r.wait_time / (1000.) 'Wait s',
r.cpu_time / 1000. 'CPU s',
r.logical_reads,
r.reads,
r.writes,
r.total_elapsed_time / (1000.) 'Elaps s',
r.sql_handle,
Substring(st.TEXT,(r.statement_start_offset / 2) + 1,
((CASE r.statement_end_offset
WHEN -1
THEN Datalength(st.TEXT)
ELSE r.statement_end_offset
END - r.statement_start_offset) / 2) + 1) AS statement_text,
COALESCE(Quotename(Db_name(st.dbid)) + N'.' + Quotename(Object_schema_name(st.objectid, st.dbid)) + N'.' +
QUOTENAME(Object_name(st.objectid, st.dbid)), '') AS command_text,
r.command
, s.login_name,
s.host_name,
s.program_name,
s.last_request_end_time,
s.login_time,
r.open_transaction_count
FROM sys.dm_exec_sessions AS s
JOIN sys.dm_exec_requests AS r ON r.session_id = s.session_id
OUTER APPLY sys.Dm_exec_sql_text(r.sql_handle) AS st
WHERE r.session_id != @@SPID
AND r.session_id > 50 -- exclude system sessions
ORDER BY r.cpu_time desc;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment