oracle中查询历史操作中耗时最长的sql语句

zhanghai921 2011-07-30 11:36:33
我想查询下共享区中存在的耗时最长的sql语句,sql如下:
select SQL_TEXT, ELAPSED_TIME from v$sqlarea where  ELAPSED_TIME in (select max( ELAPSED_TIME) from v$sqlarea);

但是有时候查不出来数据,有时候就能出来,请问这是为什么呢?

SQL> select SQL_TEXT, ELAPSED_TIME from v$sqlarea where ELAPSED_TIME in (select max( ELAPSED_TIME) from v$sqlarea);

no rows selected

SQL>
SQL> /

SQL_TEXT
--------------------------------------------------------------------------------
ELAPSED_TIME
------------
select idr_id from usage_bppp_20110701 where customer_id = :v1 and session_id =
:v2 and acct_status = :v3 and nas_ip = :v4 6353020918127

再就是这个ELAPSED_TIME 是 6353020918127 这个时间这么会这么大呢,正常吗?
...全文
1825 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanghai921 2011-07-31
  • 打赏
  • 举报
回复
还有人知道吗?
tangren 2011-07-31
  • 打赏
  • 举报
回复
--执行超过6秒的操作
select * from v$session_longops;
huangdh12 2011-07-30
  • 打赏
  • 举报
回复
查看 v$sqlarea 这个视图 最有意义的一般是 disk_reads 还有一个执行次数 excution

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧