|
Welcome
Consultancy
Seminars
Blog
Presentations
Diagnostics
Internals


|
PX PARTITION LIST (ALL)
Description
Parallel execution - iterate over all list partitioned table
Versions
This operation is implemented in the following versions
Example
This example was developed using Oracle 10.2.0.1 on Linux
This example requires the following table definitions
CREATE TABLE t1
(
c1 NUMBER,
c2 NUMBER,
c3 NUMBER,
c4 CHAR (100)
)
PARTITION BY LIST (c1)
(
PARTITION p1 VALUES (1,2),
PARTITION p2 VALUES (3,4),
PARTITION p3 VALUES (5,6),
PARTITION p4 VALUES (6,8)
);
CREATE TABLE t2
(
c1 NUMBER,
c2 NUMBER,
c3 NUMBER,
c4 CHAR (100)
)
PARTITION BY LIST (c1)
(
PARTITION p1 VALUES (1,2),
PARTITION p2 VALUES (3,4),
PARTITION p3 VALUES (5,6),
PARTITION p4 VALUES (6,8)
);
The statement
SELECT /*+ PARALLEL (t1,4) */ t2.c2
FROM t1,t2
WHERE t1.c1 = t2.c1;
generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 PX COORDINATOR
2 1 PX SEND (QC (RANDOM))
3 2 HASH JOIN
4 3 PX PARTITION LIST (ALL)
5 4 TABLE ACCESS (FULL) OF 'T1'
6 3 BUFFER (SORT)
7 6 PX RECEIVE
8 7 PX SEND (PARTITION (KEY))
9 8 PARTITION LIST (ALL)
10 9 TABLE ACCESS (FULL) OF 'T2'
|