我的申请已过期超过 3 天。 我可以在日志中看到应用程序执行一些 SQL 查询的时刻,这花费了很多时间,可能是因为一些数据库锁。
听说有这样的情况查询。因此,我需要能够提出所有耗时超过 30 分钟的查询。是否可以?
最佳答案
尝试一下:
SELECT TOP 10
total_worker_time/execution_count AS Avg_CPU_Time
,execution_count
,total_elapsed_time/execution_count as AVG_Run_Time
,(SELECT
SUBSTRING(text,statement_start_offset/2,(CASE
WHEN statement_end_offset = -1 THEN LEN(CONVERT(nvarchar(max), text)) * 2
ELSE statement_end_offset
END -statement_start_offset)/2
) FROM sys.dm_exec_sql_text(sql_handle)
) AS query_text
FROM sys.dm_exec_query_stats
ORDER BY AVG_Run_Time DESC
关于sql - 如何查找花费大量时间的 SQL Server 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2318501/