Isih dalam MySQL Menggunakan Nilai ID Tertentu dengan Pesanan Oleh
Untuk mencapai pengisihan berdasarkan set nilai ID yang telah ditetapkan menggunakan "perintah mengikut " klausa dalam MySQL, gunakan fungsi FIELD seperti berikut:
SELECT * FROM table ORDER BY FIELD(ID,1,5,4,3)
di mana "jadual" mewakili jadual sasaran.
Memahami Fungsi FIELD
Fungsi FIELD mengembalikan kedudukan nilai yang ditentukan dalam senarai nilai yang diberikan. Dalam contoh ini, nilai lajur "ID" dibandingkan dengan senarai nilai ID yang disediakan (1, 5, 4 dan 3). Hasilnya ialah indeks nilai ID yang sepadan dalam senarai dan rekod diisih berdasarkan indeks ini.
Aplikasi
Menggunakan pendekatan ini, anda boleh memastikan bahawa rekod diambil dalam susunan tertentu berdasarkan nilai ID yang diberikan. Ini amat berguna apabila anda memerlukan urutan pengisihan yang telah ditetapkan yang tidak berdasarkan nilai sebenar lajur ID.
Pendekatan Alternatif untuk Menangani Isu Penomboran
Yang asal soalan juga menimbulkan kebimbangan mengenai penomboran, di mana pengisihan berubah semasa pengguna menyemak imbas berbilang halaman. Untuk menangani perkara ini, pertimbangkan untuk menambah cap masa atau lajur nombor jujukan pada jadual. Selepas lawatan, simpan cap masa semasa atau nombor urutan dalam pembolehubah sesi. Apabila mendapatkan semula halaman berikutnya, isih menggunakan cap masa atau nombor urutan ini dan bukannya lajur ID. Dengan cara ini, pengguna akan mendapatkan semula hasil yang diisih yang sama sehingga cap masa atau nombor jujukan baharu dijana.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Isih Keputusan MySQL mengikut Susunan ID Tertentu Menggunakan ORDER BY?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!