Home Start Back Next End
  
40
Query
ini bertujuan untuk
mencari semua pekerja yang
melayani pesanan
pada id pelanggan 144
Gambar   2.28  
menunjukan   SQL  
untuk  
mencari  
hal  
tersebut   jika
menggunakan perintah EXISTS
SELECT e.employee_id,e.first_name,e.last_name,e.salary
FROM employees e
WHERE EXISTS(SELECT 1 FROM orders o
/* Note 1 */
WHERE e.employee_id = o.sales_rep_id
/* Note 2 */
AND o.customer_id = 144);
/* Note 3 */
Gambar 2. 28   SQL dengan pengunaan perintah EXISTS
*) Keterangan :
Note 1  Penggunaan EXISTS
Note 2  Penggunaan EXISTS merupakan correlated-subquery
Note
3
Baris
ini
menunjukkan
bahwa
di
dalam
correlated-subquery
ini terdapat sebuah selective-query
Tabel 2.1 Execution plan dengan penggunaan EXISTS
ID
OPERATION
OPTIONS
OBJECT_NAME
OPT
COST
0
SELECT STATEMENT
CHO
1
FILTER
2
TABEL ACCESS
FULL
EMPLOYEES
ANA
155
3
TABEL ACCESS
BY INDEX
ROWID
ORDERS
ANA
3
4
INDEX
SCAN
ORD_CUSTOMER_IX
ANA
1
Tabel  2.1 
menunjukkan  proses  eksekusi  (dari 
V$SQL_PLAN) 
untuk
perintah pada
gambar 2.28. Proses eksekusi
yang ditunjukkan pada table
2.1   memerlukan   full-tabel  scan  dari   tabel   employees   yang   mana
Word to PDF Converter | Word to HTML Converter