ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 常用的SQL 语句

常用的SQL 语句

原创 Linux操作系统 作者:杨奇龙 时间:2010-06-20 22:48:53 0 删除 编辑
---逻辑读最多的SQL
SELECT *
FROM (SELECT   buffer_gets, sql_text
            FROM v$sqlarea
           WHERE buffer_gets > 500000
        ORDER BY buffer_gets DESC)
WHERE ROWNUM <= 30;

   
-- 执行次数多的SQL
SELECT sql_text, executions
FROM (SELECT   sql_text, executions
            FROM v$sqlarea
        ORDER BY executions DESC)
WHERE ROWNUM < 81;
   
-- 读硬盘多的SQL
SELECT sql_text, disk_reads
FROM (SELECT   sql_text, disk_reads
            FROM v$sqlarea
        ORDER BY disk_reads DESC)
WHERE ROWNUM < 21;
   
-- 排序多的SQL
SELECT sql_text, sorts
FROM (SELECT   sql_text, sorts
            FROM v$sqlarea
        ORDER BY sorts DESC)
WHERE ROWNUM < 21;

--分析的次数太多,执行的次数太少,要用绑变量的方法来写sql
SELECT   SUBSTR (sql_text, 1, 80) "sql", COUNT (*),
SUM (executions) "totexecs"
FROM v$sqlarea
WHERE executions < 5
GROUP BY SUBSTR (sql_text, 1, 80)
HAVING COUNT (*) > 30
ORDER BY 2;


---找到比较长的SQL语句
SELECT   a.sql_id, COUNT (a.piece)
FROM v$sqltext a
GROUP BY a.sql_id
HAVING COUNT (a.piece) > 4;


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22664653/viewspace-665742/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
MySQL DBA NoSQL DEVOPS

注册时间:2009-10-07

  • 博文量
    1026
  • 访问量
    8206234