我是PL / SQL的新手,我使用的是版本10.0.6.1796 你能否告诉我是否有办法检查我的查询是否有笛卡尔联接?
启用警告时是否可以显示?
我感谢你能给我的任何帮助。
答案 0 :(得分:2)
您可以查看解释计划:
SQL> select * from tab1 a, tab1 b;
no rows selected
Execution Plan
----------------------------------------------------------
Plan hash value: 2439298300
------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 26 | 0 (0)| 00:00:01 |
| 1 | MERGE JOIN CARTESIAN| | 1 | 26 | 0 (0)| 00:00:01 |
| 2 | INDEX FULL SCAN | SYS_C008913 | 1 | 13 | 0 (0)| 00:00:01 |
| 3 | BUFFER SORT | | 1 | 13 | 0 (0)| 00:00:01 |
| 4 | INDEX FULL SCAN | SYS_C008913 | 1 | 13 | 0 (0)| 00:00:01 |
------------------------------------------------------------------------------------