Sintaks lengkap ungkapan SQL CASE
Ekspresi SQL CASE direka bentuk untuk mengendalikan pertanyaan kompleks, membolehkan anda menilai berbilang syarat dan mengembalikan nilai tertentu berdasarkan syarat yang dipenuhi. Sintaksnya berbeza-beza antara enjin pangkalan data yang berbeza.
SQL Server
Sintaks umum ungkapan CASE SQL Server adalah seperti berikut:
<code class="language-sql">CASE case-expression WHEN when-expression-1 THEN value-1 [ WHEN when-expression-n THEN value-n ... ] [ ELSE else-value ] END</code>
Oracle
Sintaks ungkapan CASE Oracle mengambil pendekatan yang sedikit berbeza:
<code class="language-sql">CASE WHEN boolean-when-expression-1 THEN value-1 [ WHEN boolean-when-expression-n THEN value-n ... ] [ ELSE else-value ] END</code>
Komponen ungkapan CASE
Semantik pelaksanaan
Ekspresi CASE menilai setiap ungkapan apabila secara berurutan. Apabila padanan ditemui, nilai yang sepadan dikembalikan. Jika tiada padanan ditemui, kembalikan nilai lain jika ada. Ambil perhatian bahawa susunan ungkapan bila adalah penting kerana ungkapan padanan pertama diutamakan.
Contoh
Pertimbangkan pertanyaan berikut:
<code class="language-sql">SELECT CASE student_age WHEN 18 THEN 'Teenager' WHEN 21 THEN 'Adult' ELSE 'Minor' END AS age_category FROM students;</code>
Pertanyaan ini memberikan kategori umur kepada pelajar berdasarkan umur mereka, "Remaja" jika mereka berumur 18 tahun, "Dewasa" jika mereka berumur 21 tahun atau "Minor" jika mereka berumur bawah 18 tahun atau tiada padanan ditemui.
Atas ialah kandungan terperinci Bagaimanakah Ungkapan SQL CASE Berfungsi Merentasi Sistem Pangkalan Data Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!