SQL PLUS Session Environment Oracle PLSQL Tutorial

SQL>
SQL> create table I1(n number primary key, v varchar2(10));
Table created.
SQL> create table I2(n number primary key, v varchar2(10));
Table created.
SQL>
SQL> create table MAP
  2  (n number primary key,
  3   i1 number referencing I1(n),
  4   i2 number referencing I2(n));
Table created.
SQL>
SQL> create unique index IDX_MAP on MAP(i1, i2);
Index created.
SQL> set autotrace traceonly
SQL>
SQL> select * from i1,map,i2
  2   where     i1.n = map.i1
  3   and i2.n = map.i2
  4   and i1.v = 'x'
  5   and i2.v = 'y';
no rows selected
Execution Plan
----------------------------------------------------------
Plan hash value: 3070822050
---------------------------------------------------------------------------------------------
| Id  | Operation                     | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT              |             |     1 |    79 |     4   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                 |             |     1 |    79 |     4   (0)| 00:00:01 |
|   2 |   NESTED LOOPS                |             |     1 |    59 |     3   (0)| 00:00:01 |
|   3 |    TABLE ACCESS FULL          | MAP         |     1 |    39 |     2   (0)| 00:00:01 |
|*  4 |    TABLE ACCESS BY INDEX ROWID| I1          |     1 |    20 |     1   (0)| 00:00:01 |
|*  5 |     INDEX UNIQUE SCAN         | SYS_C008275 |     1 |       |     1   (0)| 00:00:01 |
|*  6 |   TABLE ACCESS BY INDEX ROWID | I2          |     1 |    20 |     1   (0)| 00:00:01 |
|*  7 |    INDEX UNIQUE SCAN          | SYS_C008276 |     1 |       |     1   (0)| 00:00:01 |
---------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   4 - filter("I1"."V"='x')
   5 - access("I1"."N"="MAP"."I1")
   6 - filter("I2"."V"='y')
   7 - access("I2"."N"="MAP"."I2")
Note
-----
   - dynamic sampling used for this statement
Statistics
----------------------------------------------------------
         44  recursive calls
          0  db block gets
         13  consistent gets
          0  physical reads
          0  redo size
        578  bytes sent via SQL*Net to client
        369  bytes received via SQL*Net from client
          1  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          0  rows processed
SQL>
SQL> analyze table i1 compute statistics;
Table analyzed.
SQL>
SQL> analyze table i2 compute statistics;
Table analyzed.
SQL>
SQL> analyze table map compute statistics;
Table analyzed.
SQL>
SQL> select * from i1,map,i2
  2   where     i1.n = map.i1
  3   and i2.n = map.i2
  4   and i1.v = 'x'
  5   and i2.v = 'y';
no rows selected
Execution Plan
----------------------------------------------------------
Plan hash value: 1158434662
---------------------------------------------------------------------------------------------
| Id  | Operation                     | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT              |             |     1 |    79 |     4   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                 |             |     1 |    79 |     4   (0)| 00:00:01 |
|   2 |   NESTED LOOPS                |             |     1 |    59 |     3   (0)| 00:00:01 |
|*  3 |    TABLE ACCESS FULL          | I1          |     1 |    20 |     2   (0)| 00:00:01 |
|   4 |    TABLE ACCESS BY INDEX ROWID| MAP         |     1 |    39 |     1   (0)| 00:00:01 |
|*  5 |     INDEX RANGE SCAN          | IDX_MAP     |     1 |       |     1   (0)| 00:00:01 |
|*  6 |   TABLE ACCESS BY INDEX ROWID | I2          |     1 |    20 |     1   (0)| 00:00:01 |
|*  7 |    INDEX UNIQUE SCAN          | SYS_C008276 |     1 |       |     1   (0)| 00:00:01 |
---------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   3 - filter("I1"."V"='x')
   5 - access("I1"."N"="MAP"."I1")
   6 - filter("I2"."V"='y')
   7 - access("I2"."N"="MAP"."I2")
Statistics
----------------------------------------------------------
          1  recursive calls
          0  db block gets
          3  consistent gets
          0  physical reads
          0  redo size
        578  bytes sent via SQL*Net to client
        369  bytes received via SQL*Net from client
          1  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          0  rows processed
SQL>
SQL> set autotrace off
SQL>
SQL> create index i1_idx on i1(v);
Index created.
SQL>
SQL> analyze table i1 compute statistics;
Table analyzed.
SQL>
SQL> set autotrace traceonly
SQL>
SQL> select * from i1,map,i2
  2  where     i1.n = map.i1
  3  and i2.n = map.i2
  4  and i1.v = 'x'
  5  and i2.v = 'y';
no rows selected
Execution Plan
----------------------------------------------------------
Plan hash value: 1388106715
---------------------------------------------------------------------------------------------
| Id  | Operation                     | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT              |             |     1 |    79 |     3   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                 |             |     1 |    79 |     3   (0)| 00:00:01 |
|   2 |   NESTED LOOPS                |             |     1 |    59 |     2   (0)| 00:00:01 |
|   3 |    TABLE ACCESS BY INDEX ROWID| I1          |     1 |    20 |     1   (0)| 00:00:01 |
|*  4 |     INDEX RANGE SCAN          | I1_IDX      |     1 |       |     1   (0)| 00:00:01 |
|   5 |    TABLE ACCESS BY INDEX ROWID| MAP         |     1 |    39 |     1   (0)| 00:00:01 |
|*  6 |     INDEX RANGE SCAN          | IDX_MAP     |     1 |       |     1   (0)| 00:00:01 |
|*  7 |   TABLE ACCESS BY INDEX ROWID | I2          |     1 |    20 |     1   (0)| 00:00:01 |
|*  8 |    INDEX UNIQUE SCAN          | SYS_C008276 |     1 |       |     1   (0)| 00:00:01 |
---------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   4 - access("I1"."V"='x')
   6 - access("I1"."N"="MAP"."I1")
   7 - filter("I2"."V"='y')
   8 - access("I2"."N"="MAP"."I2")
Statistics
----------------------------------------------------------
          1  recursive calls
          0  db block gets
          1  consistent gets
          0  physical reads
          0  redo size
        578  bytes sent via SQL*Net to client
        369  bytes received via SQL*Net from client
          1  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          0  rows processed
SQL>
SQL> set autotrace off