主页 > 知识库 > oracle查看执行最慢与查询次数最多的sql语句

oracle查看执行最慢与查询次数最多的sql语句

热门标签:呼叫中心市场需求 地方门户网站 铁路电话系统 网站排名优化 Linux服务器 百度竞价排名 服务外包 AI电销

前言

在ORACLE数据库应用调优中,一个SQL的执行次数/频率也是常常需要关注的,因为某个SQL执行太频繁,要么是由于应用设计有缺陷,需要在业务逻辑上做出优化处理,要么是业务特殊性所导致。如果执行频繁的SQL,往往容易遭遇一些并发性的问题。 那么如何查看ORACLE数据库某个SQL的执行频率/次数呢? 下面来看看完整的示例代码。

一、查询执行最慢的sql

select *
 from (select sa.SQL_TEXT,
        sa.SQL_FULLTEXT,
        sa.EXECUTIONS "执行次数",
        round(sa.ELAPSED_TIME / 1000000, 2) "总执行时间",
        round(sa.ELAPSED_TIME / 1000000 / sa.EXECUTIONS, 2) "平均执行时间",
        sa.COMMAND_TYPE,
        sa.PARSING_USER_ID "用户ID",
        u.username "用户名",
        sa.HASH_VALUE
     from v$sqlarea sa
     left join all_users u
      on sa.PARSING_USER_ID = u.user_id
     where sa.EXECUTIONS > 0
     order by (sa.ELAPSED_TIME / sa.EXECUTIONS) desc)
 where rownum = 50;

二、查询次数最多的 sql

select *
 from (select s.SQL_TEXT,
        s.EXECUTIONS "执行次数",
        s.PARSING_USER_ID "用户名",
        rank() over(order by EXECUTIONS desc) EXEC_RANK
     from v$sql s
     left join all_users u
      on u.USER_ID = s.PARSING_USER_ID) t
 where exec_rank = 100;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

您可能感兴趣的文章:
  • PHP实现mysqli批量执行多条语句的方法示例
  • 用非动态SQL Server SQL语句来对动态查询进行执行
  • SQL SERVER 中构建执行动态SQL语句的方法
  • mybatis 插件: 打印 sql 及其执行时间实现方法
  • Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)
  • Mysql 服务 1067 错误 的解决方法:修改mysql可执行文件路径
  • MySql批量插入优化Sql执行效率实例详解
  • SQL执行步骤的具体分析

标签:铜川 仙桃 崇左 黄山 兰州 湘潭 湖南 衡水

巨人网络通讯声明:本文标题《oracle查看执行最慢与查询次数最多的sql语句》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266