Event 10060
Before Oracle9i Release 2, you could use event 10060 to
dump predicates to a pre-created table.
1 Table:
2 KKOIPT_TABLE
1 qbctjp
2 10="E"."DEPTNO"
3 Table:
4 DEPT
5 frofand
6 "D"."DEPTNO"=10
7 Table:
...
The following example uses the same example query from the
previous page. Event
10060 can be used to view the predicates.
SQL> create table kkoipt_table (
2 c1 integer,
3 c2 varchar2(80)
4 );
SQL> ALTER session set events '10060 trace name
context forever';
SQL> select dname
2 from dept d , emp e
3 where d.deptno = e.deptno
4 and d.deptno = 10;
SQL> set pagesize 999
SQL> column c1 format 990
SQL> column c2 format a75
SQL> select * from KKOIPT_TABLE;
C1 C2
--- ------------------------------
1 Table:
2 KKOIPT_TABLE
1 qbctjp
2 10="E"."DEPTNO"
3 Table:
4 DEPT
5 frofand
6 "D"."DEPTNO"=10
7 Table:
8 EMP
9 frofkksm[i] (sort-merge/hash)
10 "D"."DEPTNO"="E"."DEPTNO"
11 frosand (sort-merge/hash)
12 "D"."DEPTNO"="E"."DEPTNO"
13 frofand
14 "E"."DEPTNO"=10
frofand is an ANDed table predicate and is the same as the two
filters on the previous
slide. The highlighted lines (5, 6, 13, 14) are the same as:
2 - filter("D"."DEPTNO"=10)
3 - filter("E"."DEPTNO"=10)
The frosand and frofkksm have comments in brackets to help
explain their meaning:
9 frofkksm[i] (sort-merge/hash)
10 "D"."DEPTNO"="E"."DEPTNO"
11 frosand (sort-merge/hash)
12 "D"."DEPTNO"="E"."DEPTNO"
These lines are the equivalent of:
1 - access("D"."DEPTNO"="E"."DEPTNO")