Pernyataan Kasus SQL Ketika Nilainya Null

Pernyataan Kasus Sql Ketika Nilainya Null



Eksekusi bersyarat mengacu pada kemampuan untuk mengeksekusi blok kode hanya jika kondisi tertentu terpenuhi. Ini adalah operasi luas dalam pembangunan. Misalnya, cara paling umum untuk mencapai eksekusi bersyarat dalam SQL adalah menggunakan pernyataan CASE.

Pernyataan CASE memungkinkan kita untuk melakukan logika kondisional dengan memeriksa nilai dari satu atau lebih kolom dalam sebuah tabel dan kemudian mengeksekusi blok kode tertentu berdasarkan hasil dari pemeriksaan tersebut.







Tutorial ini mengajarkan kita cara menggunakan pernyataan CASE jika nilai yang diberikan adalah NULL.



Pernyataan Kasus SQL

Berikut ini menunjukkan sintaks pernyataan CASE dalam SQL:



ekspresi KASUS
KETIKA nilai_1 MAKA hasil_1
KAPAN nilai_2 KEMUDIAN hasil_2
...
LAINNYA default_result
AKHIR


Pertimbangkan contoh berikut:





membuat tabel siswa (
pengenal int auto_increment bukan kunci utama nol,
nama varchar ( lima puluh ) ,
int science_score bukan nol,
int math_score bukan nol,
int history_score bukan nol,
int lain bukan nol
) ;
INSERT INTO siswa ( nama, skor_sains, skor_matematika, skor_sejarah, lainnya )
NILAI
( 'John Doe' , 80 , 70 , 90 , 85 ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 ) ;


Misalnya, kita dapat menggunakan pernyataan CASE untuk mengevaluasi berbagai opsi dan mengembalikan tindakan tertentu seperti yang ditunjukkan dalam contoh berikut:

PILIH
nama,
skor_sains,
skor_matematika,
skor_sejarah,
lainnya,
KASUS
KAPAN ( skor_sains + skor_matematika + skor_sejarah + lainnya ) / 4 > = 90 KEMUDIAN 'A'
KAPAN ( skor_sains + skor_matematika + skor_sejarah + lainnya ) / 4 > = 80 KEMUDIAN 'B'
KAPAN ( skor_sains + skor_matematika + skor_sejarah + lainnya ) / 4 > = 70 KEMUDIAN 'C'
KAPAN ( skor_sains + skor_matematika + skor_sejarah + lainnya ) / 4 > = 60 KEMUDIAN 'D'
KALAU TIDAK 'F'
AKHIR SEBAGAI 'Nilai'
DARI siswa;


Keluaran yang dihasilkan:



Pernyataan Kasus SQL Ketika Nilainya Null

Kita dapat menggunakan pernyataan CASE untuk mengeksekusi blok kode ketika berhadapan dengan nilai null. Selain itu, kita dapat menggunakan operator IS NULL dan IS NOT Null untuk mengevaluasi nilai NULL dan melakukan tindakan tertentu berdasarkan nilai yang dikembalikan.

Perhatikan contoh sintaks berikut:

PILIH
KASUS
KETIKA nama_kolom NULL MAKA 'Nilai adalah nol'
KALAU TIDAK 'Nilai bukan nol'
AKHIR SEBAGAI hasilnya
DARI nama_tabel;


Dalam hal ini, kami memeriksa apakah nilai nama_kolom yang disediakan adalah nol. Jika benar, kami mengembalikan 'Nilai adalah nol'. rangkaian. Jika tidak, jika nilainya bukan nol, kami mengembalikan 'Nilai bukan nol'. rangkaian.

Kami juga menggunakan kata kunci AS sebagai alias untuk string hasil.

Perhatikan contoh tabel berikut:

INSERT INTO siswa ( nama, skor_sains, skor_matematika, skor_sejarah, lainnya, suhu )
NILAI
( 'John Doe' , 80 , 70 , 90 , 85 , nol ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 , nol ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 , 'T' ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 , 'S' ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 , nol ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 , nol ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 , 'batal' ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 , '' ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 , nol ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 , 'A' ) ;


Kami kemudian dapat mencetak pesan tertentu untuk nilai null menggunakan pernyataan CASE.

Pilih nama, suhu,
KASUS
KETIKA suhu NULL MAKA 'Nilai adalah nol'
KALAU TIDAK 'Nilai bukan nol'
AKHIR SEBAGAI hasilnya
DARI siswa;


Keluaran:

Kesimpulan

Kami belajar bagaimana bekerja dengan pernyataan KASUS SQL untuk mengevaluasi kondisi tertentu dan melakukan tugas yang diperlukan berdasarkan nilai yang dihasilkan.