Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Melaksanakan Logik IF-ELSE dalam Pertanyaan MySQL Menggunakan Ungkapan CASE?

Bagaimanakah Saya Boleh Melaksanakan Logik IF-ELSE dalam Pertanyaan MySQL Menggunakan Ungkapan CASE?

Susan Sarandon
Lepaskan: 2024-12-04 13:03:14
asal
508 orang telah melayarinya

How Can I Implement IF-ELSE Logic in MySQL Queries Using CASE Expressions?

IF ELSE Statements dalam MySQL Queries

Dalam bidang pengurusan pangkalan data, MySQL menyediakan set keupayaan pertanyaan yang mantap. Antaranya ialah keupayaan untuk melaksanakan segmen kod secara bersyarat berdasarkan syarat tertentu. Di sinilah penyataan IF ELSE dimainkan.

Menggunakan Ungkapan KES

Walaupun MySQL tidak secara langsung menyokong pernyataan IF ELSE, wujud binaan serupa yang dikenali sebagai ungkapan CASE. Ungkapan CASE membolehkan anda mentakrifkan berbilang syarat dan menentukan hasil yang berbeza berdasarkan syarat yang dipenuhi.

Untuk menggunakan ungkapan CASE, anda boleh mengikut sintaks umum ini:

SELECT col1, col2,
CASE
    WHEN condition1 THEN value1
    WHEN condition2 THEN value2
    ...
    ELSE default_value
END AS desired_column_name
FROM table_name;
Salin selepas log masuk

Contoh

Pertimbangkan soalan asal, yang bertujuan untuk memberikan nilai kepada pembolehubah berdasarkan syarat semak:

mysql_query("...(irrelevant code).. IF(action==2&&state==0){state=1}");
Salin selepas log masuk

Menggunakan ungkapan CASE, anda boleh mencapai hasil yang sama seperti berikut:

SELECT col1, col2,
CASE
    WHEN action = 2 AND state = 0 THEN 1
    ELSE 0
END AS state
FROM table_name;
Salin selepas log masuk

Apabila dilaksanakan, pertanyaan ini akan mengembalikan lajur yang ditentukan, termasuk lajur keadaan, yang akan diisi dengan nilai 1 jika kedua-dua tindakan dan syarat keadaan dipenuhi; jika tidak, ia akan diberikan nilai 0.

Dengan menggunakan ungkapan CASE, anda boleh melaksanakan logik bersyarat dalam pertanyaan MySQL anda dan memanipulasi nilai data berdasarkan kriteria tertentu, sama seperti yang anda lakukan dengan pernyataan IF ELSE.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Logik IF-ELSE dalam Pertanyaan MySQL Menggunakan Ungkapan CASE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan