通过下面的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