Search notes:
Oracle SQL Plan operation EXPRESSION EVALUATION
create table tq84_A as
select
level num,
rpad('x', 1000, 'x') pad
from
dual connect by level <= 10000;
create table tq84_B as
select
trunc(mod(level, 100) * dbms_random.value(1, 100)) num,
rpad('x', 1000, 'x') pad
from
dual connect by level <= 10000;
explain plan for
select /*+ parallel(4) */
a.num,
(select count(*) from tq84_B b where b.num < a.num) cnt
from
tq84_A a
where
to_char(a.num) like '%157';
select * from table(dbms_xplan.display(format=>'basic'));
-- ---------------------------------------------
-- | Id | Operation | Name |
-- ---------------------------------------------
-- | 0 | SELECT STATEMENT | |
-- | 1 | PX COORDINATOR | |
-- | 2 | PX SEND QC (RANDOM) | :TQ10000 |
-- | 3 | EXPRESSION EVALUATION | |
-- | 4 | PX BLOCK ITERATOR | |
-- | 5 | TABLE ACCESS FULL | TQ84_A |
-- | 6 | SORT AGGREGATE | |
-- | 7 | TABLE ACCESS FULL | TQ84_B |
-- ---------------------------------------------
drop table tq84_A;
drop table tq84_B;