SELECT TOP 100
qs.total_worker_time / 1000 AS [Total CPU Time (ms)],
qs.execution_count AS [Execution Count],
qs.total_worker_time / qs.execution_count / 1000 AS [Average CPU Time (ms)],
qs.last_execution_time AS [Last Execution Time],
qs.max_worker_time / 1000 AS [Max CPU Time (ms)],
SUBSTRING(qt.text, qs.statement_start_offset / 2 + 1,
(CASE WHEN qs.statement_end_offset = -1 THEN DATALENGTH(qt.text)
ELSE qs.statement_end_offset END - qs.statement_start_offset) / 2 + 1) AS [Query Text],
qt.text AS [Complete Query Text],
DB_NAME(qt.dbid) AS [Database Name],
OBJECT_NAME(qt.objectid, qt.dbid) AS [Object Name]
FROM sys.dm_exec_query_stats qs WITH (NOLOCK)
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE
qs.execution_count > 1
AND qt.dbid = DB_ID('big_data') -- 替换为你的数据库名称
ORDER BY qs.total_worker_time DESC;
查看 SQL server的慢查询SQL
于 2025-07-25 09:23:24 首次发布