【TUNE_ORACLE】列出走了笛卡爾積的SQL參考
實驗環境
搭建平臺:VMware Workstation
OS:RHEL 6.10
Grid&DB:Oracle 11.2.0.4
SQL參考
select c.sql_text,
a.sql_id,
b.object_name,
a.filter_predicates filter,
a.access_predicates predicate,
d.mb
from v$sql_plan a,
(select *
from (select sql_id,
child_number,
object_owner,
object_name,
parent_id,
operation,
options,
row_number() over(partition by sql_id, child_number, parent_id order by id) rn
from v$sql_plan)
where rn = 1) b,
v$sql c,
(select owner, segment_name, sum(bytes / 1024 / 1024) mb
from dba_segments
group by owner, segment_name) d
where b.sql_id = c.sql_id
and b.child_number = c.child_number
and b.object_owner = 'TEST'
and a.sql_id = b.sql_id
and a.child_number = b.child_number
and a.operation like 'MERGE JOIN' --一般情況下出現 MERGE JOIN CARTESIAN(笛卡爾積連線)要麼是SQL程式有問題,要麼是執行計劃不準,大多數是執行計劃不準導致
and a.options = 'CARTESIAN'
and a.id = b.parent_id
and b.object_owner = d.owner
and b.object_name = d.segment_name
order by 4 desc;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2786819/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【TUNE_ORACLE】列出走了Filter的SQL參考OracleFilterSQL
- 【TUNE_ORACLE】列出走了INDEX FULL SCAN的SQL參考OracleIndexSQL
- 【TUNE_ORACLE】列出走了TABLE ACCESS FULL的SQL參考OracleSQL
- 【TUNE_ORACLE】列出走了INDEX SKIP SCAN的SQL參考OracleIndexSQL
- 【TUNE_ORACLE】列出走了低選擇性索引的SQL參考Oracle索引SQL
- 【TUNE_ORACLE】列出走了錯誤的排序合併連線的SQL參考Oracle排序SQL
- 【TUNE_ORACLE】列出索引被哪些SQL引用的SQL參考Oracle索引SQL
- 【TUNE_ORACLE】列出NL(NESTED LOOPS)被驅動表走了全表掃描的SQL參考OracleOOPSQL
- 【TUNE_ORACLE】列出有標量子查詢的SQL參考OracleSQL
- 【TUNE_ORACLE】列出LOOP套LOOP的PL/SQL程式碼SQL參考OracleOOPSQL
- 【TUNE_ORACLE】列出帶有自定義函式的SQL的SQL參考Oracle函式SQL
- 【TUNE_ORACLE】列出SQL謂詞中需要建立索引的列SQL參考OracleSQL索引
- 【TUNE_ORACLE】列出必須建立直方圖的列SQL參考Oracle直方圖SQL
- 【TUNE_ORACLE】列出一條SQL中多次出現的表名的SQL參考OracleSQL
- java 笛卡爾積(迴圈)Java
- 統計資訊不準確導致執行計劃走了笛卡爾積
- 笛卡爾積與全連線
- 成績錄入SQL語句 笛卡爾積 LEFT JOINSQL
- 【TUNE_ORACLE】列出返回行數較多的巢狀迴圈(NESTED LOOPS)SQL的SQL參考Oracle巢狀OOPSQL
- 【TUNE_ORACLE】列出可以建立組合索引的SQL(回表訪問少數字段)的SQL參考Oracle索引SQL
- 笛卡爾積的應用——商品 SKU 計算
- Oracle的表連線方法(四)笛卡爾積Oracle
- 【TUNE_ORACLE】ROWID切片SQL參考OracleSQL
- [JavaScript] 求解任意n個集合的笛卡爾積JavaScript
- 笛卡爾積和NEST LOOP產生的影響OOP
- SQL 語句調優_減少或者避免笛卡爾乘積的發生SQL
- 二維陣列笛卡爾積js實現陣列JS
- 【TUNE_ORACLE】列出可以建立組合索引的SQL(回表再過濾選擇性高的列)的SQL參考Oracle索引SQL
- 笛卡爾樹
- 笛卡爾乘積的javascript版實現和應用JavaScript
- Python如何從列表中獲取笛卡爾積Python
- 【TUNE_ORACLE】檢視錶的總塊數SQL參考OracleSQL
- 【TUNE_ORACLE】檢視索引的叢集因子SQL參考Oracle索引SQL
- 【TUNE_ORACLE】查出所有有“select *”語句的SQL參考OracleSQL
- php計算多個集合的笛卡爾積例項詳解PHP
- 【TUNE_ORACLE】定製化執行計劃SQL參考OracleSQL
- 【TUNE_ORACLE】定製化收集統計資訊SQL參考OracleSQL
- 【TUNE_ORACLE】檢查統計資訊是否過期SQL參考OracleSQL