Isih Keputusan mengikut Nilai dalam Klausa "IN" MySQL
Dalam pernyataan klausa "IN" dalam MySQL, keputusan biasanya dikembalikan dalam cara tidak teratur. Walau bagaimanapun, terdapat cara untuk menyusun keputusan berdasarkan nilai yang dinyatakan dalam klausa.
Menggunakan Fungsi FIELD()
Satu pendekatan ialah menggunakan FIELD( ) fungsi, yang mengembalikan kedudukan nilai yang ditentukan dalam senarai. Dengan menggunakan fungsi ini, anda boleh mengisih hasil secara manual dalam susunan yang dikehendaki. Sintaksnya adalah seperti berikut:
ORDER BY FIELD(column, value1, value2, ..., valueN)
Contoh
Pertimbangkan contoh berikut:
SELECT * FROM account_records WHERE id IN (5,2,6,8,12,1) ORDER BY FIELD(id,5,2,6,8,12,1);
Dalam pertanyaan ini, hasilnya akan dikembalikan dalam susunan yang dinyatakan dalam argumen fungsi FIELD(), yang merupakan nilai dalam "IN" klausa.
Selang-seli, Menggunakan Jadual Sementara
Seperti yang dinyatakan, anda juga boleh mempertimbangkan untuk mencipta jadual sementara untuk mencapai pengisihan yang diingini. Langkah-langkahnya akan melibatkan:
Walaupun pendekatan ini boleh memberikan penyelesaian yang lebih serba boleh, ia kurang cekap berbanding menggunakan fungsi FIELD() untuk keperluan pengisihan yang mudah.
Atas ialah kandungan terperinci Bagaimana untuk Memesan Keputusan dalam Klausa \'IN\' MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!