sqlserver 找到執行慢的sql

2021-09-01 20:04:58 字數 1022 閱讀 8198

select

(total_elapsed_time / execution_count)/1000 n'平均時間ms'

,total_elapsed_time/1000 n'總花費時間ms'

,total_worker_time/1000 n'所用的cpu總時間ms'

,total_physical_reads n'物理讀取總次數'

,total_logical_reads/execution_count n'每次邏輯讀次數'

,total_logical_reads n'邏輯讀取總次數'

,total_logical_writes n'邏輯寫入總次數'

,execution_count n'執行次數'

,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) n'執行語句'

,creation_time n'語句編譯時間'

,last_execution_time n'上次執行時間'

from

where

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) not like '%fetch%'

order by

total_elapsed_time / execution_count desc;

SQLServer找出執行慢的SQL語句

select total elapsed time execution count 1000 n 平均時間ms total elapsed time 1000 n 總花費時間ms total worker time 1000 n 所用的cpu總時間ms total physical reads n ...

SQLServer找出執行慢的SQL語句

select total elapsed time execution count 1000 n 平均時間ms total elapsed time 1000 n 總花費時間ms total worker time 1000 n 所用的cpu總時間ms total physical reads n ...

優化慢執行或慢查詢的方法

相當於就是之前乙個表資料量比較小,之後資料量大了查詢就變慢,此時在經常用到的字段上加個索引,效率會翻倍很多的 例如 where a 5 10 可以 轉化為 where a 10 5 這樣既可以保證業務邏輯也可以繼續使用原索引去操作,所以要避免對索引字段進行計算或型別轉化 如果業務邏輯允許,且表裡幾乎...