PROGRAM BASIS DATA
PERTEMUAN IV
Optimasi query
Dilakukan
dengan mengetahui bagaimana rencana eksekusi query yang ‘baik’.
Rencana
dari optimasi query dapat dilakukan dengan mengoptimalkan ekspresi aljabar
relasional seperti:
§ Selection
§ Projection
§ Cartesian
product / cross product (x)
§ Union
§ Set-difference
Query
decomposition
§ Normalisasi
§ Analisa
semantic
§ Memperbaiki
query
§ Menata
ulang struktur dari query (restructured)
Contoh
soal 1:
Mencari
nama pelanggan dengan ap ‘lenteng agung ‘ dengan daya 1300 atau 900 watt
Jawaban:
SQL : Select nmpel
From pelanggan p , daya_terpasang d
Where p.idpel = d.idpel
And ap = “lenteng agung” And (daya = 1300 Or
daya = 900)
Normalisasi
:
p.idpel = d.idpel ∧
ap=“lenteng agung” ∧ (daya = 1300 V Daya =900)
atau
(p.idpel = d.idpel ∧
ap=“lenteng agung” ∧ Daya = 1300)
V
(p.idpel = d.idpel ∧
ap=“lenteng agung” ∧ Daya = 900)
Contoh soal 2:
Cari
nama pelanggan dan daya dengan tariff kurang dari 1100
Jawaban
:
SELECT nmpel, daya
FROM pelanggan p, daya_terpasang d, harga h
WHERE p.idpel = d.idpel AND d.gol = h.gol AND tarif
<1100 span="">1100>
Adapun Query
Graph :
SELECT nmpel,daya
FROM
FROM pelanggan p, daya_terpasang d, harga h
WHERE p.idpel = d.idpel
AND d.gol = h.gol
Tarif <1100 span="">1100>
AND tarif <1100 span="">1100>