Oracle 11g Sys查询

kan*_*nna 7 oracle oracle11g

有人可以告诉我为什么下面的查询被解雇以及什么时候被解雇.我相信这个问题会对性能产生巨大影响.我无法追踪这被解雇的地方.

查询:

SELECT SUM (used), SUM (total)
FROM (SELECT /*+ ORDERED */ 
             SUM (d.BYTES) / (1024 * 1024) - MAX (s.BYTES) used,
             SUM (d.BYTES) / (1024 * 1024) total
      FROM ( SELECT   tablespace_name, SUM (BYTES) / (1024 * 1024) BYTES
             FROM ( SELECT/*+ ORDERED USE_NL(obj tab) */DISTINCT ts.NAME
                    FROM SYS.obj$ obj, SYS.tab$ tab,  SYS.ts$ ts
                    WHERE obj.owner# = USERENV ('SCHEMAID')
                    AND obj.obj# = tab.obj#
                    AND tab.ts# = ts.ts#
                    AND BITAND (tab.property, 1) = 0
                    AND BITAND (tab.property, 4194400) = 0) tn,
             dba_free_space sp
             WHERE sp.tablespace_name = tn.NAME
             GROUP BY sp.tablespace_name) s, dba_data_files d
      WHERE d.tablespace_name = s.tablespace_name
      GROUP BY d.tablespace_name)    
Run Code Online (Sandbox Code Playgroud)

它在SYS.TS $和SYS.FILE $上进行全表扫描.我相信它正在利用数据库的最大资源.

请帮我.

提前致谢.

Old*_*mer 1

您是否在 v$sqlarea 中进行了查询,看看它是否在那里,然后看看它是什么会话/用户?