Definisi dan Penggunaan
Pernyataan CASE
digunakan untuk melewati kondisi dan mengembalikan nilai saat kondisi pertama terpenuhi (seperti pernyataan IF-THEN-ELSE). Jadi, begitu suatu kondisi benar, maka akan berhenti membaca dan mengembalikan hasilnya.
Jika tidak ada kondisi yang benar, maka akan mengembalikan nilai dalam klausa ELSE.
Jika tidak ada bagian ELSE dan tidak ada kondisi yang benar, akan mengembalikan NULL.
Syntax
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;
Nilai Parameter
Parameter | Deskripsi |
---|---|
condition1, condition2, …conditionN | Required. Syaratnya. Ini dievaluasi dalam urutan yang sama seperti yang tercantum |
result1, result2, …resultN | Required. Nilai yang akan ditampilkan setelah kondisi benar |
Detail Teknis
Works in: | Mulai dari MySQL 4.0 |
---|
Contoh
Pergi melalui kondisi dan kembalikan nilai saat kondisi pertama terpenuhi:
SELECT OrderID, Quantity, CASE WHEN Quantity > 45 THEN "Kuantitasnya lebih besar dari 45" WHEN Quantity = 45 THEN "Kuantitasnya adalah 45" ELSE "Kuantitasnya kurang dari 45" END FROM OrderDetails;
Contoh
SQL berikut akan mengurutkan customer berdasarkan Kota. Namun, jika kota adalah NULL, maka urutkan berdasarkan Negara:
SELECT NamaCustomer, Kota, Negara FROM Customers ORDER BY (CASE WHEN Kota IS NULL THEN Negara ELSE Kota END);