Home Start Back Next End
  
43
lagi
berkorelasi
karena
penggunaan
IN
menggantikan join.
Note 5 and 6  Menunjukkan selective-query.
Tabel 2. 3 Execution plan dari pengunaan IN
ID
OPERATION
OPTIONS
OBJECT_NAME
OPT
COST
0
SELECT STATEMENT
CHO
1
NESTED LOOPS
125
2
VIEW
116
3
SORT
UNIQUE
116
4
TABEL ACCESS
FULL
ORDERS
ANA
40
5
TABEL ACCESS
BY
INDEXROWID
EMPLOYEES
ANA
1
6
INDEX
UNIQUE SCAN
EMP_EMP_ID_PK
ANA
Tabel
2.3
menunjukkan
execution plan
(dari
V$SQL_PLAN)
untuk
perintah pada
gambar 2.30. Proses
ini akan
membuat optimizer
membuat
sebuah
view yang
berisi
banyak
employee_id
karena
tidak
adanya
selective-predicate dan kemudian akan dibandingkan dengan tabel
employees melalui indeks yang unik.
Gambar 2.31 menunjukan contoh query yang menggunakan EXISTS :
SELECT e.employee_id, e.first_name, e.last_name,
e.salary
FROM employees   e
WHERE e.department_id = 80          
/*Note 5*/
AND e.job_id = 'SA_REP'             
/*Note 6*/
AND EXISTS
(SELECT 1                             /*Note 1*/
FROM orders o
WHERE e.employee_id =o.sales_rep_id); /*Note 2*/
Gambar 2. 31 Query dengan pengunaan EXISTS
Word to PDF Converter | Word to HTML Converter