你應該能夠去通了sys.dm_exec_query_stats動態管理表,它不斷對數據庫中的所有查詢的信息。
SELECT creation_time
,last_execution_time
,total_physical_reads
,total_logical_reads
,total_logical_writes
, execution_count
, total_worker_time
, total_elapsed_time
, total_elapsed_time/execution_count avg_elapsed_time
,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) st
ORDER BY last_execution_time,total_elapsed_time/execution_count DESC;
爲您提供了歷史上查詢花了多長時間的基本計時信息。
很遺憾,你不能升級到SQL Server 2008,它會告訴你這些事情。活動監視器將通過幾個標準向您顯示頂級查詢,允許您查看查詢和執行計劃。根據各種標準報告可用於頂級查詢,表格和索引等。 – 2009-06-05 12:21:53