pertanyaan MySQL ini mengutamakan item tertentu dalam hasil anda, memaparkannya terlebih dahulu, diikuti dengan item yang tersisa yang disusun mengikut perintah yang dipilih.
inilah cara membina pertanyaan:
<code class="language-sql">SELECT id, name FROM friends ORDER BY CASE WHEN name = 'SpecificItemName' THEN 0 -- Prioritize 'SpecificItemName' ELSE 1 -- All other items END, name ASC; -- Sort the remaining items alphabetically by name (adjust as needed)</code>
memberikan nilai 0 kepada item yang diprioritaskan dan 1 kepada semua yang lain. Klausa 'SpecificItemName'
kemudiannya mengikut nilai ini, meletakkan item yang diprioritaskan terlebih dahulu. Klausa CASE
(atau mana -mana kriteria penyortiran lain) menyusun item yang tersisa mengikut abjad mengikut nama. Anda boleh menukar ORDER BY
ke name ASC
untuk perintah menurun, atau menggantikan ASC
dengan lajur lain untuk penyortiran yang berbeza. Pendekatan ini memastikan bahawa item khusus anda selalu muncul di bahagian atas hasil, dengan seluruh data yang dianjurkan seperti yang anda nyatakan. DESC
Atas ialah kandungan terperinci Bagaimana Mengutamakan Item Tertentu dalam Pertanyaan MySQL Kemudian Susun Selebihnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!