Execute part of statement on a remote node
This operation is implemented in the following versions
|
This example was developed using Oracle 9.2.0.1 on Windows 2000
This example requires the following table definition
-- On local database CREATE TABLE t1 (c1 NUMBER,c2 NUMBER); -- On remote database CREATE TABLE t2 (c1 NUMBER);
The table does not need to be analysed
Consider the statement
SELECT c2 FROM t1 WHERE c1 = ( SELECT c1 FROM t2@database@link );
In Oracle 9.2 this statement generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE 1 0 FILTER 2 1 TABLE ACCESS (FULL) OF 'T1' 3 1 REMOTE*
The SERIAL_FROM_REMOTE statement that is executed on the remote system by step 3 is
SELECT c1 FROM t2;
In Oracle 10.2 this statement generates the following execution plan
0 SELECT STATEMENT Optimizer=CHOOSE 1 0 TABLE ACCESS (FULL) OF 'T1' 2 1 REMOTE*
The SERIAL_FROM_REMOTE statement that is executed on the remote system by step 2 is
SELECT c1 FROM t2;