Concatenates the rows returned by two or more rowsets. Used with OR expansions
This operation is implemented in the following versions
|
This operation has not yet been observed in Oracle 10.1 or Oracle 10.2
Oracle 9.2
This example was developed using Oracle 9.2.0.1 on Windows 2000
This example requires the following table and index definitions
CREATE TABLE t1 (c1 NUMBER,c2 NUMBER,c3 NUMBER);
The table does not need to be analysed
The statement
SELECT /*+ USE_CONCAT */ c1 FROM t1 WHERE c2 = 0 OR c3 = 0;
generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE 1 0 CONCATENATION 2 1 TABLE ACCESS (FULL) OF 'T1' 3 1 TABLE ACCESS (FULL) OF 'T1'
Oracle 10.2
This example was developed using Oracle 10.2.0.1 on Red Hat Linux
This example requires the following table and index definitions
CREATE TABLE t1 (c1 NUMBER,c2 NUMBER,c3 NUMBER);
The table does not need to be analysed
The statement
SELECT /*+ USE_CONCAT */ c1 FROM t1 WHERE c1 IN (10,20);
generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE 1 0 CONCATENATION 2 1 INDEX (RANGE SCAN) OF 'I1' 3 1 INDEX (RANGE SCAN) OF 'I1'