oracle sql最长_怎么查找一次执行时间最长的SQL?

prompt Top 30 Average CPU Time SQL (> 10 seconds)

column AverageCpuTime        format 9999.9                heading 'Ave CPU|Time (S)'

column CpuTime                format 999999.9                heading 'CPU|Time (S)'

column ElapsedTime         format 999999.9                heading 'Elapsed|Time (S)'

column Executions                   format 99999                heading 'Exec|Times'

column SQLText                       format a64                heading 'SQL Text'

column Address noprint

break on Address skip 1 on AverageCpuTime on CpuTime on ElapsedTime on Executions

select a.address Address,

b.cpu_time / 1000000 / b.executions AverageCpuTime,

b.cpu_time / 1000000 CpuTime,

b.elapsed_time / 1000000 ElapsedTime,

b.executions Executions,

a.sql_text SQLText

from   v$sqltext a,

v$sqlarea b

where  a.address = b.address and

a.hash_value = b.hash_value and

b.executions > 0 and

(b.address, b.hash_value) in (select address, hash_value

from   (select address, hash_value

from   v$sqlarea

where  executions > 0 and

cpu_time / 1000000 > 10 * executions

order  by cpu_time desc)

where  rownum < 31)

group  by a.address,

a.sql_text,

a.piece,

b.cpu_time,

b.elapsed_time,

b.executions

order  by AverageCpuTime desc,

a.address,

a.piece;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值