autotrace merge command : autotrace « SQL Plus « Oracle PL / SQL

Oracle PL / SQL
1. Aggregate Functions
2. Analytical Functions
3. Char Functions
4. Constraints
5. Conversion Functions
6. Cursor
7. Data Type
8. Date Timezone
9. Hierarchical Query
10. Index
11. Insert Delete Update
12. Large Objects
13. Numeric Math Functions
14. Object Oriented Database
15. PL SQL
16. Regular Expressions
17. Report Column Page
18. Result Set
19. Select Query
20. Sequence
21. SQL Plus
22. Stored Procedure Function
23. Subquery
24. System Packages
25. System Tables Views
26. Table
27. Table Joins
28. Trigger
29. User Previliege
30. View
31. XML
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Oracle PL / SQL » SQL Plus » autotrace 
autotrace merge command
  

SQL> create table myTable as select from dba_objects;

Table created.

SQL> delete from myTable where rownum <= 100;

100 rows deleted.

SQL> create table myTable2 as select from dba_objects;

Table created.

SQL> set autotrace on
SQL> merge into myTable b
  2  using myTable2 o
  3  on (b.owner = o.owner and b.object_name = o.object_name
  4      and
  5      b.subobject_name = o.subobject_name
  6      and
  7      b.object_id = o.object_id)
  8  when matched then update set b.created = o.created
  9  when not matched then insert
 10  values o.OWNER ,o.OBJECT_NAME ,o.SUBOBJECT_NAME ,o.OBJECT_ID ,o.DATA_OBJECT_ID
 11          ,o.OBJECT_TYPE ,o.CREATED ,o.LAST_DDL_TIME,o.TIMESTAMP ,o.STATUS,o.TEMPORARY,o.GENERATED
 12          ,o.SECONDARY )
 13  /

13219 rows merged.


Execution Plan
----------------------------------------------------------
Plan hash value: 449939568

-------------------------------------------------------------------------
| Id  | Operation            | Name     | Rows  | Bytes |TempSpc| Cost  |
-------------------------------------------------------------------------
|   | MERGE STATEMENT      |          | 13723 |  3832K|       |    99 |
|   |  MERGE               | MYTABLE  |       |       |       |       |
|   |   VIEW               |          |       |       |       |       |
|*  |    HASH JOIN OUTER   |          | 13723 |  2680K|  1504K|    99 |
|   |     TABLE ACCESS FULL| MYTABLE2 | 13723 |  1340K|       |    26 |
|   |     TABLE ACCESS FULL| MYTABLE  | 13723 |  1340K|       |    26 |
-------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   - access("B"."OBJECT_ID"(+)="O"."OBJECT_ID" AND
              "B"."SUBOBJECT_NAME"(+)="O"."SUBOBJECT_NAME" AND
              "B"."OBJECT_NAME"(+)="O"."OBJECT_NAME" AND "B"."OWNER"(+)="O"."OWN
ER")


Note
-----
   - cpu costing is off (consider enabling it)


Statistics
----------------------------------------------------------
        253  recursive calls
      14050  db block gets
        388  consistent gets
        329  physical reads
    4644528  redo size
        929  bytes sent via SQL*Net to client
       1374  bytes received via SQL*Net from client
          6  SQL*Net roundtrips to/from client
          1  sorts (memory)
          0  sorts (disk)
      13219  rows processed

SQL>
SQL> set autotrace off
SQL> rollback;

Rollback complete.

SQL> set autotrace on
SQL>
SQL> merge into myTable b
  2  using (select from myTable2o
  3  on (b.owner = o.owner and b.object_name = o.object_name
  4      and
  5      b.subobject_name = o.subobject_name
  6      and
  7      b.object_id = o.object_id)
  8  when matched then update set b.created = o.created
  9  when not matched then insert
 10  values o.OWNER ,o.OBJECT_NAME ,o.SUBOBJECT_NAME ,o.OBJECT_ID ,o.DATA_OBJECT_ID
 11          ,o.OBJECT_TYPE ,o.CREATED ,o.LAST_DDL_TIME,o.TIMESTAMP ,o.STATUS,o.TEMPORARY,o.GENERATED
 12          ,o.SECONDARY )
 13  /

13219 rows merged.


Execution Plan
----------------------------------------------------------
Plan hash value: 449939568

-------------------------------------------------------------------------
| Id  | Operation            | Name     | Rows  | Bytes |TempSpc| Cost  |
-------------------------------------------------------------------------
|   | MERGE STATEMENT      |          | 13723 |  3832K|       |    99 |
|   |  MERGE               | MYTABLE  |       |       |       |       |
|   |   VIEW               |          |       |       |       |       |
|*  |    HASH JOIN OUTER   |          | 13723 |  2680K|  1504K|    99 |
|   |     TABLE ACCESS FULL| MYTABLE2 | 13723 |  1340K|       |    26 |
|   |     TABLE ACCESS FULL| MYTABLE  | 13723 |  1340K|       |    26 |
-------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   - access("B"."OBJECT_ID"(+)="MYTABLE2"."OBJECT_ID" AND
              "B"."SUBOBJECT_NAME"(+)="MYTABLE2"."SUBOBJECT_NAME" AND
              "B"."OBJECT_NAME"(+)="MYTABLE2"."OBJECT_NAME" AND
              "B"."OWNER"(+)="MYTABLE2"."OWNER")

Note
-----
   - cpu costing is off (consider enabling it)


Statistics
----------------------------------------------------------
          4  recursive calls
      13763  db block gets
        678  consistent gets
          0  physical reads
    4614184  redo size
        929  bytes sent via SQL*Net to client
       1390  bytes received via SQL*Net from client
          6  SQL*Net roundtrips to/from client
          1  sorts (memory)
          0  sorts (disk)
      13219  rows processed

SQL>
SQL> set autotrace off
SQL> rollback;

Rollback complete.

SQL>
SQL> drop table myTable;

Table dropped.

SQL> drop table myTable2;

Table dropped.

SQL>
SQL>
SQL>

   
    
  
Related examples in the same category
1. autotrace command
2. Autotrace on and off
3. Autotrace lower text function
4. Autotrace running total
5. Autotrace a query on a huge table
6. Autotrace a large table
7. Autotrace a query with group clause
8. Execution Plan
9. autotrace a nested query
10. set autotrace on explain for every single statement
11. set autotrace traceonly explain for bitmap index
12. set autotrace traceonly explain, and condition
13. set autotrace traceonly statistics
14. set autotrace traceonly statistics for 'select * from tableName'
15. set autotrace traceonly
16. AUTOTRACE exists (subquery)
17. AUTOTRACE table joining
18. AUTOTRACE table joining and aggregate function
19. autotrace ansi full outer join
20. autotrace count(*)
21. autotrace ctxsys.context index
22. autotrace table with/without an index
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.