Penggunaan case apabila dalam oracle ialah: 1. Digunakan dalam klausa WHERE, CASE WHEN boleh digunakan untuk melaksanakan keadaan penapisan yang lebih kompleks, boleh digunakan untuk menyarangkan ungkapan bersyarat lain dan menggunakan operator logik (AND, OR, NOT) untuk menggabungkan syarat; 2. Digunakan dalam senarai lajur PILIH, CASE WHEN boleh digunakan untuk menambah lajur tambahan pada hasil pertanyaan. Nilai yang berbeza boleh dikembalikan berdasarkan keputusan keadaan dan dipaparkan sebagai lajur baharu dalam set hasil.
Sistem pengendalian tutorial ini: sistem Windows 10, Oracle versi 19c, komputer Dell G3.
CASE WHEN pernyataan digunakan untuk melaksanakan logik bersyarat dalam Oracle. Ia boleh digunakan dalam klausa WHERE bagi pernyataan SELECT, serta dalam senarai lajur bagi pernyataan SELECT.
Sintaks asas pernyataan CASE WHEN adalah seperti berikut:
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ... ELSE result END
Dalam sintaks di atas, anda boleh mengembalikan nilai yang berbeza berdasarkan hasil keadaan. Mula-mula, ia menilai setiap keadaan mengikut tertib, dan setelah ia menemui satu yang memenuhi syarat, mengembalikan hasil yang sepadan, dan kemudian keluar dari ungkapan CASE. Jika tiada syarat dipenuhi, anda boleh menggunakan klausa ELSE untuk menentukan nilai pulangan lalai.
Penggunaan CASE WHEN dalam klausa WHERE
Dalam klausa WHERE, CASE WHEN boleh digunakan untuk melaksanakan syarat penapisan yang lebih kompleks. Anda boleh menggunakannya untuk menyarangkan ungkapan bersyarat lain dan menggabungkan syarat menggunakan operator logik (DAN, ATAU, BUKAN).
Berikut ialah contoh yang menunjukkan cara menggunakan CASE WHEN dalam klausa WHERE:
SELECT column1, column2, ... FROM table WHERE CASE WHEN condition1 THEN true -- 如果条件1满足,返回true WHEN condition2 THEN true -- 如果条件2满足,返回true ELSE false -- 默认返回false END;
Dalam contoh ini, benar atau salah dikembalikan berdasarkan keputusan syarat. Anda boleh menggunakan syarat ini dengan sebarang ungkapan atau fungsi SQL yang sah.
Penggunaan CASE WHEN dalam senarai lajur SELECT
Dalam senarai lajur SELECT, CASE WHEN boleh digunakan untuk menambah lajur tambahan pada hasil pertanyaan. Anda boleh mengembalikan nilai yang berbeza berdasarkan hasil keadaan dan memaparkannya sebagai lajur baharu dalam set hasil.
Berikut ialah contoh yang menunjukkan cara menggunakan CASE WHEN dalam senarai lajur PILIH:
SELECT column1, column2, CASE WHEN condition1 THEN result1 -- 如果条件1满足,返回result1 WHEN condition2 THEN result2 -- 如果条件2满足,返回result2 ELSE result -- 默认返回result END AS new_column FROM table;
Dalam contoh ini, nilai berbeza dikembalikan berdasarkan hasil keadaan dan nilai ini dipaparkan dalam set hasil sebagai lajur baharu "lajur_baru" . Anda boleh menggunakan syarat ini dengan sebarang ungkapan atau fungsi SQL yang sah.
Ringkasnya, pernyataan CASE WHEN menyediakan cara yang fleksibel untuk melaksanakan logik bersyarat dalam Oracle. Anda boleh menggunakannya dalam klausa WHERE dan senarai lajur SELECT untuk melaksanakan keadaan penapis yang lebih kompleks dan menambah lajur tambahan pada hasil pertanyaan.
Atas ialah kandungan terperinci Apakah kegunaan kes semasa dalam Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!