Modul P5-Pemrograman Basis Data
Modul P5-Pemrograman Basis Data
Tatap Muka
04
Matakuliah : 11341T1EA
Disusun oleh : Didik Setiyadi,S.Kom.,M.Kom.,M.M.
DESKRIPSI MATERI PERTEMUAN 5
Materi Pertemuan 5 Fungsi Satu Baris Bagian II (Single Row Function Part II)
Deskripsi Materi Menjelaskan tentang Fungsi Konversi, Fungsi NULL, Ekspresi Bersyarat
dan mengerjakan kuis di Oracle Academy
Sub Capaian Mahasiswa mampu menjelaskan dan memhamai tentang: Fungsi Konversi,
Pembelajaran Mata Fungsi NULL dan Ekspresi Bersyarat.
Kuliah (Sub CPMK)
Deskrispsi Tugas Mahasiswa mengerjakan latihan kasus dan kuis di oracle academy sesuai
dengan deadline yang diberikan.
Kontrak Perkuliahan Seluruh mahaiswa mengukuti kuliah daring (zoom meeting) setial hari Sabtu
mulai pukul 19:30 s/d 22:00 wib sesuai jadwal yang telah ditetapkan.
Penilaian akhir meliputi: Kehadiran = 10%, Tugas mandiri = 40%, UTS =
25%, UAS = 25%.
Konversi Tipe
Keempat fungsi konversi tipe data yang akan Anda pelajari antara lain: untuk
mengonversi tipe data ke tipe data karakter dan untuk mengonversi tipe data angka ke
tipe data karakter
Tabel tersebut mengilustrasikan elemen format yang tersedia untuk digunakan dengan
fungsi TO_CHAR
− $3000.00
− 4,500
− 9,000.00
− 0004422
Kolom bonus termasuk data yang berisi 4 karakter, model format menentukan 3 karakter,
sehingga kesalahan dikembalikan
Tanggal
27-Oct-2095
Tahun dua digit diinterpretasikan sebagai 2095, ini mungkin bukan maksud awalnya. Jika
YY digunakan dalam model format, tahun tersebut diasumsikan merujuk pada abad saat
ini. Jika tahun dua digit tidak pada abad tersebut, kita akan menggunakan RR. Tahun
dua digit saat ini diinterpretasikan sebagai 1995
FROM dual;
Tanggal
27-Oct-1995
NVL (nilai atau kolom yang mungkin berisi null, nilai untuk menggantikan null)
Kueri berikut menggunakan fungsi NVL dengan tipe data karakter:
Anda dapat menggunakan fungsi NVL untuk mengonversi nilai kolom yang berisi null ke
jumlah sebelum dilakukan penghitungan. Ketika kalkulasi aritmatika dikerjakan dengan
null, hasil akan null. Fungsi NVL dapat mengonversi nilai null ke jumlah sebelum
penghitungan aritmatika yang dilakukan untuk menghindari hasil null.
Contohnya, kolom commission_pct pada tabel karyawan berisi nilai null. Fungsi NVL
digunakan untuk mengubah null ke nol sebelum penghitungan aritmatika.
LONG adalah tipe data karakter panjang variabel dengan ukuran hingga 2 gigabyte. Tipe
data akan dibahas lebih mendalam nanti dalam
Fungsi NVL2 adalah:
Cara mudah untuk mengingat NVL2 adalah dengan berpikir, "jika ekspresi 1 memiliki
nilai, jika ekspresi 1 adalah null, ganti ekspresi 3."
Fungsi NVL2 menunjukkan penggunaan tipe data angka untuk ekspresi 1, 2, dan 3
NULLIF(expression 1, expression 2)
Pada contoh ini, NULLIF membandingkan panjang nama depan dan nama belakang
karyawan. Jika panjang keduanya sama, NULLIF mengembalikan NULL (seperti pada
baris 2 Curtis Davies), sebaliknya, ekspresi 1 LENGTH dari first_name dikembalikan.
Fungsi NULLIF sering digunakan setelah mengerjakan proyek migrasi data untuk
menguji apakah data pada sistem target sama dengan sistem sumber asli. Jadi, NULLIF
digunakan untuk melihat pengecualian, bukan kecocokan. Biasanya, null sebagai hasil
dari NULLIF itu benar, karena Anda menginginkan data pada sistem sumber dan target
agar sama persis.
Fungsi COALESCE
Fungsi COALESCE adalah ekstensi dari fungsi NVL, kecuali COALESCE dapat
menggunakan beberapa nilai. Kata "coalesce" secara harfiah artinya "bergabung" dan
demikianlah yang terjadi. Jika ekspresi pertama adalah null, fungsi selanjutnya turun ke
baris hingga tidak ada ekspresi null yang ditemukan. Tentu, jika ekspresi pertama
2023 Pemrograman Basis Data Pusat Bahan Ajar dan eLearning
21 Didik Setiyadi,S.Kom.,M.Kom.,M.M., Telpon : 087824368145 http://www.undira.ac.id
memiliki nilai, fungsi mengembalikan ekspresi pertama dan fungsi akan berhenti. Fungsi
COALESCE adalah:
Periksa pernyataan SELECT dari tabel karyawan yang ditampilkan di sebelah kanan.
Jika karyawan memiliki nilai ( not NULL) for commission_pct, ini akan dikembalikan,
sebaliknya, jika gaji memiliki nilai, akan mengembalikan gaji. Jika karyawan
commission_pct dan gaji NULL, kembalikan angka 10.
Ekspresi Kondisional
Dua ekspresi kondisional adalah CASE dan DECODE. Anda telah mempelajari NULLIF,
yang secara logis setara dengan ekspresi CASE dalam CASE yang membandingkan dua
ekspresi. NULLIF membandingkan dua ekspresi, dan jika dua ekspresi itu sama, maka
kembalikan nol; jika tidak sama, maka kembalikan ekspresi pertama.
Ekspresi DECODE
Fungsi DECODE mengevaluasi ekspresi dengan cara yang mirip dengan logika IF-
THEN-ELSE. DECODE membandingkan ekspresi ke setiap pencarian nilai. Sintaks
untuk DECODE adalah:
[, default])
SELECT last_name, DECODE(department_id, 90, 'Management', 80, 'Sales', 60, 'It', 'Other dept.')
AS "Department"
FROM employees;
Kueri ini mengembalikan hasil yang sama persis seperti contoh CASE sebelumnya,
namun menggunakan sintaks yang berbeda