詳細記錄sql執行時間 精確到毫秒

2022-02-08 02:10:09 字數 966 閱讀 2489

寫程式的人,往往需要分析所寫的sql語句是否已經優化過了,伺服器的響應時間有多快,這個時候就需要用到sql的statistics狀態值來檢視了。

通過設定statistics我們可以檢視執行sql時的系統情況。選項有profile,io ,time。介紹如下:

set statistics profile on:顯示分析、編譯和執行查詢所需的時間(以毫秒為單位)。 

set statistics io on:報告與語句內引用的每個表的掃瞄數、邏輯讀取數(在快取記憶體中訪問的頁數)和物理讀取數(訪問磁碟的次數)有關的資訊。 

set statistics time on:顯示每個查詢執行後的結果集,代表查詢執行的配置檔案。

使用方法:開啟sql server 查詢分析器,輸入以下語句:

set statistics profile on 

set statistics io on 

set statistics time on 

go /*--你的sql指令碼開始*/

select [testcase] from [testcaseselect] 

go /*--你的sql指令碼結束*/

set statistics profile off 

set statistics io off 

set statistics time off

另外,也可以通過手工新增語句,計算執行時間來檢視執行語句花費了的時間,以判斷該條sql語句的效率如何:

declare @d datetime

set @d=getdate()

/*你的sql指令碼開始*/

select [testcase] from [testcaseselect] 

/*你的sql指令碼結束*/

select [語句執行花費時間(毫秒)]=datediff(ms,@d,getdate())

獲取程式執行時間(精確到毫秒)

large integer litmp1,litmp2,lit longlong qpart1 0,qpart2 0 double dfminus,dffreq,dftim queryperformancefrequency litmp1 獲得計數器的時鐘頻率 dffreq double litmp...

記錄執行時間

記錄乙個在device上執行的函式的執行時間時需要用到 事件 event cudaevent t timestartevent,timeendevent 宣告兩個cudaevent t變數 cudaeventcreate tartevent,0 第二個引數忘了幹嗎用的了 cudaeventcreat...

C 記錄執行時間

包含標頭檔案 ctime clock t start time,end time start time clock for double i 0 i 1000000000 i 放置需要測試時間的 end time clock cout double end time start time clock...