Rumah  >  Artikel  >  pangkalan data  >  Cara menggunakan fungsi CASE untuk melaksanakan pelbagai pertimbangan bersyarat dalam MySQL

Cara menggunakan fungsi CASE untuk melaksanakan pelbagai pertimbangan bersyarat dalam MySQL

王林
王林asal
2023-07-24 20:41:452763semak imbas

Cara menggunakan fungsi CASE dalam MySQL untuk melaksanakan pelbagai pertimbangan bersyarat

Dalam MySQL, kita selalunya perlu melakukan pertimbangan bersyarat pada data dan melaksanakan operasi berbeza berdasarkan keadaan berbeza. Fungsi CASE ialah alat yang sangat berguna yang boleh melaksanakan pelbagai pertimbangan bersyarat dan melaksanakan operasi yang berbeza berdasarkan keadaan yang berbeza. Sintaks fungsi

CASE adalah seperti berikut:
CASE
APABILA syarat1 MAKA terhasil1
APABILA syarat2 MAKA terhasil2
...
hasil LAIN
END

di mana, syarat ialah ungkapan bersyarat, yang boleh menjadi sebarang ungkapan yang boleh mengembalikan nilai Boolean; keputusan ialah operasi yang perlu dilakukan apabila syarat yang sepadan dipenuhi.

Berikut ialah beberapa contoh yang menunjukkan cara menggunakan fungsi CASE untuk melaksanakan pelbagai pertimbangan bersyarat:

  1. Penghakiman bersyarat tunggal:

Andaikan kita mempunyai jadual pelajar yang mengandungi maklumat dan gred pelajar. Sekarang kita ingin menilai gred pelajar berdasarkan markah mereka Apabila skor lebih besar daripada atau sama dengan 80 mata, ia adalah A, apabila gred lebih daripada atau sama dengan 60 mata dan kurang daripada 80 mata, ia adalah B, dan apabila grednya kurang daripada 60 mata, ia adalah C. Ini boleh dicapai menggunakan kod berikut:

PILIH
nama,
skor,
KES

  WHEN score >= 80 THEN 'A'
  WHEN score >= 60 THEN 'B'
  ELSE 'C'

TAMAT sebagai gred
DARI
pelajar;

  1. Penghakiman berbilang syarat:
hanya dilakukan dalam contoh di atas

penghakiman syarat tunggal. Jika kita perlu menilai berdasarkan berbilang syarat, kita boleh menggunakan fungsi CASE bersarang.

Katakan kita mempunyai jadual pesanan yang mengandungi maklumat pesanan dan jumlah amaun. Sekarang kita ingin menilai tahap pesanan berdasarkan jumlah keseluruhan Apabila jumlah keseluruhan lebih besar daripada atau sama dengan 1,000, ia adalah pesanan peringkat tinggi, apabila lebih besar daripada atau sama dengan 500 dan kurang daripada 1,000, ia adalah pesanan peringkat pertengahan, dan apabila jumlah keseluruhan kurang daripada 500, ia adalah pesanan peringkat rendah. Ini boleh dicapai menggunakan kod berikut:

PILIH
order_id,
jumlah_jumlah,
CASE

  WHEN total_amount >=1000 THEN '高级订单'
  WHEN total_amount >=500 THEN '中级订单'
  ELSE '低级订单'

END sebagai tahap
DARI
pesanan;

  1. Sebagai tambahan menggunakan fungsi CASE dalam operasi kemas kini:
  2. CASE dalam pernyataan pertanyaan Selain fungsi, kita juga boleh menggunakan fungsi CASE dalam operasi kemas kini. Sebagai contoh, jika kita ingin mengemas kini gred pelajar berdasarkan gred mereka, kita boleh menggunakan kod berikut untuk mencapai ini:

KEMASKINI pelajar

SET gred =

CASE

  WHEN score >= 80 THEN 'A'
  WHEN score >= 60 THEN 'B'
  ELSE 'C'

END;

Ringkasan:

Dalam MySQL, fungsi CASE ialah alat yang sangat berguna yang boleh melaksanakan pelbagai pertimbangan bersyarat dan melaksanakan operasi yang berbeza berdasarkan keadaan yang berbeza. Sama ada dalam pernyataan pertanyaan atau operasi kemas kini, fungsi CASE boleh membantu kami membuat pertimbangan bersyarat secara ringkas dan fleksibel. Saya harap kod sampel dalam artikel ini dapat membantu pembaca memahami dan menggunakan fungsi CASE dengan lebih baik.

Atas ialah kandungan terperinci Cara menggunakan fungsi CASE untuk melaksanakan pelbagai pertimbangan bersyarat dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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