CONNECT BY
Description
Performs a hierarchical self-join
Versions
This operation is implemented in the following versions
| |
| 7.3.4 |
| 8.0.4 |
| 8.0.5 |
| 8.0.6 |
| 8.1.5 |
| 8.1.6 |
| 8.1.7 |
| 9.0.1 |
| 9.2.0 |
| 10.1.0 |
| 10.2.0 |
|
Example
This example was developed using Oracle 9.2.0.1 on Windows 2000
In Oracle 9.0 and above, the CONNECT BY operation is no longer the default
behaviour for the CONNECT BY statement. In order to force a CONNECT BY
operation the unsupported parameter "_old_connect_by_enabled" must be set to
true e.g.
ALTER SESSION SET "_old_connect_by_enabled" = TRUE;
This example requires the following table and index definitions
CREATE TABLE t1 (c1 NUMBER,c2 NUMBER);
The table does not need to be analysed
The statement
SELECT c1,c2 FROM t1
CONNECT BY c1 = PRIOR c2
START WITH c1 = 0;
generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 CONNECT BY
2 1 TABLE ACCESS (FULL) OF 'T1'
3 1 TABLE ACCESS (BY USER ROWID) OF 'T1'
4 1 TABLE ACCESS (FULL) OF 'T1'
|