Rumah >pangkalan data >tutorial mysql >Bagaimana Memesan Data Mengikut Lajur Berbeza Berdasarkan Keadaan dalam MySQL?
Cara Memesan Mengikut Lajur Berbeza Berdasarkan Syarat
Dalam MySQL, adalah mungkin untuk memesan data mengikut lajur berbeza berdasarkan syarat menggunakan fungsi SQL atau pernyataan CASE.
Menggunakan Fungsi IF:
Untuk menggunakan fungsi IF dalam klausa ORDER BY, anda boleh menentukan dua ungkapan yang dipisahkan oleh koma. Ungkapan pertama ialah syarat yang menentukan ungkapan yang hendak digunakan. Ungkapan kedua ialah nilai untuk digunakan jika keadaan adalah benar.
Contohnya:
ORDER BY IF(TYPE='Member', LNAME, GROUPNAME) ASC
Pernyataan ini akan menyusun data mengikut lajur LNAME jika lajur TYPE adalah sama dengan ' Ahli', dan mengikut lajur GROUPNAME jika lajur TYPE adalah sama dengan 'Kumpulan'.
Menggunakan Penyata KES:
Pernyataan KES ialah pilihan yang lebih fleksibel untuk memesan data mengikut lajur berbeza berdasarkan syarat. Ia membolehkan anda menentukan berbilang syarat dan ungkapan yang sepadan.
Contohnya:
ORDER BY CASE `type` WHEN 'Member' THEN LNAME WHEN 'Group' THEN GROUPNAME ELSE 1 END ASC
Dalam pernyataan ini, data akan disusun mengikut lajur LNAME jika lajur jenis adalah sama dengan ' Ahli', mengikut lajur GROUPNAME jika lajur jenis adalah sama dengan 'Kumpulan' dan dengan nilai 1 sebaliknya.
Atas ialah kandungan terperinci Bagaimana Memesan Data Mengikut Lajur Berbeza Berdasarkan Keadaan dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!