Wednesday, June 15, 2005

PL/SQL , Using "Case"

Kemarin temen aku ada yang punya problem, misal dia punya table yang namanya TABLE_1 yang didalamnya ada 3 field yaitu A, B, dan C dengan isi terserah.
Table_1
A B C
--------------------------

Kemudian dia pengen melakukan select query untuk field A dan B dengan aturan :
1. Jika nilai B tidak sama dengan NULL maka isi B dengan '1'
2. Jika nilai B sama dengan NULL dan nilai C sama dengan NULL maka isi B dengan '2'
3. Selain itu isi B dengan '3'

Permasalahannya dia bingung bagaimana sintaknya yah ? :D
Klo menurutku sih kita bisa menggunakan sintaks CASE pada saat select query seperti di bawah ini :
SELECT T1.A,
(
CASE WHEN T1.B IS NOT NULL
THEN '1'
WHEN T1.B IS NULL
AND T1.C IS NULL
THEN '2'
ELSE
'3'
END
) B
FROM TABLE_1 T1
Dan seharusnya sih berhasil , soalnya aku udah coba dan jalan. Selamat mencoba :))

No comments: