Rumah > Artikel > pangkalan data > Bagaimana untuk Mendapatkan Baris dalam Susunan Tertentu Menggunakan Klausa WHERE IN?
Dapatkan Baris dalam Susunan Tertentu Menggunakan Klausa WHERE IN
Apabila menanyakan data menggunakan klausa WHERE IN, baris biasanya dikembalikan dalam menaik susunan berdasarkan medan yang dinyatakan dalam klausa. Walau bagaimanapun, mungkin terdapat kes di mana anda perlu mendapatkan semula baris dalam susunan yang tepat ia muncul dalam klausa WHERE.
Ini boleh dicapai dengan menggunakan fungsi ORDER BY FIELD. Fungsi FIELD mengembalikan kedudukan nilai yang ditentukan dalam senarai yang dipisahkan koma. Dengan menggunakan fungsi ini, anda boleh mengisih baris mengikut susunan nilai yang disenaraikan dalam klausa WHERE IN.
Contoh:
Pertimbangkan pertanyaan berikut:
SELECT * FROM table WHERE id IN (118, 17, 113, 23, 72);
Pertanyaan ini mengembalikan baris yang dipesan mengikut ID dalam tertib menaik. Untuk mendapatkan semula baris dalam susunan yang dinyatakan dalam klausa IN, kami boleh mengubah suai pertanyaan seperti berikut:
SELECT * FROM table WHERE id IN (118, 17, 113, 23, 72) ORDER BY FIELD(id, 118, 17, 113, 23, 72)
Fungsi ORDER BY FIELD mengambil dua parameter:
Dalam kes ini, kami mengisih baris mengikut medan id dan nilai dalam senarai yang dipisahkan koma menentukan susunan baris yang harus dikembalikan.
Dengan menggunakan fungsi ORDER BY FIELD, anda boleh memastikan bahawa baris dikembalikan dalam susunan tepat yang dinyatakan dalam klausa WHERE IN .
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Baris dalam Susunan Tertentu Menggunakan Klausa WHERE IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!