通過下面的SQL,我們可以快速查看某個存儲過程執行的狀況:
SELECT TOP 100 db_name(d.database_id) as DBName,s.name as 存儲名稱,s.type_desc as 存儲類型,d.cached_time as SP添加到緩存的時間,
d.last_execution_time as 上次執行SP的時間,d.last_elapsed_time as [上次執行SP所用的時間(微妙)],d.total_elapsed_time as [完成此SP的執行所用的總時間(微妙)],
d.total_elapsed_time/d.execution_count as [平均執行時間(微妙)],d.execution_count as 自上次編譯以來所執行的次數
FROM SYS.proceres S JOIN SYS.dm_exec_procere_stats D
ON S.object_id=D.object_id
WHERE S.NAME='SP_Name'
ORDER BY D.total_elapsed_time/D.execution_count DESC
Ⅱ 怎麼查詢oracle中響應時間最長的sql語句,並列出平均響應時間
可以看一下執行計劃,里邊很詳細。在plsql里按住F5即是執行計劃。
如果在sql命令窗口:
Explain plan
explain plan for
select * from table_name;
查看結果:
select * from table(dbms_xplan.display());
Ⅲ 請教v$sql中elapsed
單位不是毫秒,而是microsecond,微秒
用戶在v$sql中發現elapsed_time 的時間有問題,我看了下,也覺得有點奇怪。請各位幫忙解釋下為何會出現這種情況??
v$sql 一個sql 語句導出如下: 其中
EXECUTIONS =2293,
ELAPSED_TIME = 9500593398
Ⅳ SQL 怎麼計算時間
SELECTDATEDIFF(mi,intime,outtime)ASElapsedTimeFROM[表名]
你可以使用DATEDIFF(datepart,startdate,enddate)函數,
datepart 參數可以是下列的值:
datepart 縮寫
年 yy, yyyy
季度 qq, q
月 mm, m
年中的日 dy, y
日 dd, d
周 wk, ww
星期 dw, w
小時 hh
分鍾 mi, n
秒 ss, s
毫秒 ms
微妙 mcs
納秒 ns