Dalam praktek sehari-hari dalam menampilkan data sering kali kita harus berhadapan dengan kondisi percabangan, jika ini maka begini, jika itu maka begitu. Kondisi seperti itu dapat ditampilkan dengan bantuan fungsi decode. fungsi ini mirip dengan fungsi if jika di spreadsheet.
Format penerapannya dalam SQL adalah :
decode(nama_kolom, variable_1, nilai_1, variable_2, nilai_2, nilai_3)
penjelasan : Jika dalam suatu kolom veriabel_1 terpenuhi, maka akan dipilih nilai_1, jika yang dipenuhi variabel_2 maka nilai_2 yang akan ditampilkan, dan jika semua variabel tidak dipenuhi, maka yang ditampilkan nilai_3. Variabel dan nilai dapat ditambah sesuai dengan kebutuhan.
Contoh :
misalnya kita punya tabel berikut :
Jika kita akan menampilkan tabel tersebut dengan menambah kolom keterangan, nilai 9 berarti sangat baik, 7 baik, 5 kurang, 4 jelek
Kelemahan dari fungsi decode a
dalah kita tidak dapat memakai fungsi logika dalam variabel. Jika kita punya kondisi : 1-4 jelek, 5-6 kurang, 7-9 baik, 10 baik sekali, berarti kita tetap harus memasukkan satu-satu nilai tiap variabel. decode memang berfungsi mengganti nilai suatu kolom apa adanya.
Nilai dari Kolom Lain
Nilai yang ingin ditampilkan dapat di ambil dari kolom lain, misalnya kita punya tabel pembayaran seperti berikut ini :
Kita ingin menampilkan pembayaran bulan mei, dengan struktur tabel NAMA | BULAN
kolom bulan berisi jumlah uang yang dibayar, maka script nya adalah :
Kita perlu memfilter hanya bulan 5 yang dipanggil dengan perintah where agar data yang keluar hanya nama-nama yang mempunyai pembayaran bulan 5. jika kita tidak memfilternya maka seluruh data akan tampil, tetapi yang bukan pembayaran bulan 5 akan kosong.
Ini adalah tampilan dari script diatas
hanya dua nama yang muncul karena telah difilter bulan 5 saja.
Jika tidak difilter maka seluruh data akan ditampilkan, tapi yang bukan bukan 5 akan kosong.

Demikianlah penjelasan singkat tentang fungsi decode, pada prakteknya nanti fungsi ini dapat dipakai untuk pivot tabel, dll.
Format penerapannya dalam SQL adalah :
decode(nama_kolom, variable_1, nilai_1, variable_2, nilai_2, nilai_3)
penjelasan : Jika dalam suatu kolom veriabel_1 terpenuhi, maka akan dipilih nilai_1, jika yang dipenuhi variabel_2 maka nilai_2 yang akan ditampilkan, dan jika semua variabel tidak dipenuhi, maka yang ditampilkan nilai_3. Variabel dan nilai dapat ditambah sesuai dengan kebutuhan.
Contoh :
misalnya kita punya tabel berikut :
maka script SQL-nya adalah :
select nama, nilai, decode(nilai,4,'jelek',5,'kurang',7,'baik',9,'baik_sekali) keterangan from tabel_1
Hasil dari script diatas adalah :select nama, nilai, decode(nilai,4,'jelek',5,'kurang',7,'baik',9,'baik_sekali) keterangan from tabel_1
Kelemahan dari fungsi decode a
Nilai dari Kolom Lain
Nilai yang ingin ditampilkan dapat di ambil dari kolom lain, misalnya kita punya tabel pembayaran seperti berikut ini :
kolom bulan berisi jumlah uang yang dibayar, maka script nya adalah :
select nama, decode(bulan,5,jumlah) bulan
from tabel_2
where bulan=5
from tabel_2
where bulan=5
Kita perlu memfilter hanya bulan 5 yang dipanggil dengan perintah where agar data yang keluar hanya nama-nama yang mempunyai pembayaran bulan 5. jika kita tidak memfilternya maka seluruh data akan tampil, tetapi yang bukan pembayaran bulan 5 akan kosong.
Ini adalah tampilan dari script diatas
hanya dua nama yang muncul karena telah difilter bulan 5 saja.
Jika tidak difilter maka seluruh data akan ditampilkan, tapi yang bukan bukan 5 akan kosong.
Demikianlah penjelasan singkat tentang fungsi decode, pada prakteknya nanti fungsi ini dapat dipakai untuk pivot tabel, dll.
wah amat berguna nih buat pemula yang belum tau fungsi 2 dari sql (oracle), tambahin lagi dong yah artikelnya...
BalasHapusHAY,terimakasih ya sangat bermanfaat,ikuti juga blog saya ya
BalasHapusanisyafc.blogspot.com
terimakasih :)
terimakasih banyak kak sangat jelas penjelasannya
BalasHapus