如何查看IO量大的SQL語句



SET STATISTICS IO 使 SQL Server 顯示有關由 Transact-SQL 語句生成的磁盤活動量的信息。


例如

掃描計數 1,邏輯讀取 503 次,物理讀取 2 次,預讀 534 次,lob 邏輯讀取 0 次,lob 物理讀取 0 次,lob 預讀 0 次。


查看IO量大的SQL語句


select top 50 
    (total_logical_reads/execution_count) as avg_logical_reads,
    (total_logical_writes/execution_count) as avg_logical_writes,
    (total_physical_reads/execution_count) as avg_phys_reads,
     Execution_count, 
    statement_start_offset as stmt_start_offset, statement_end_offset as stmt_end_offset,
substring(sql_text.text, (statement_start_offset/2), 
case 
when (statement_end_offset -statement_start_offset)/2 <=0 then 64000
else (statement_end_offset -statement_start_offset)/2 end) as exec_statement,  sql_text.text,plan_text.*
from sys.dm_exec_query_stats  
cross apply sys.dm_exec_sql_text(sql_handle) as sql_text
cross apply sys.dm_exec_query_plan(plan_handle) as plan_text
order by 
 (total_logical_reads + total_logical_writes) /Execution_count Desc



文章轉載自:  查看IO量大的SQL語句及它們的執行計劃    http://www.studyofnet.com/news/747.html



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章