Bagaimana Memesan Baris Berdasarkan Susunan dalam Klausa WHERE IN?

DDD
Lepaskan: 2024-10-27 12:40:03
asal
392 orang telah melayarinya

How to Order Rows Based on the Order in a WHERE IN Clause?

Atur Baris Mengikut Klausa WHERE IN Menggunakan ORDER BY FIELD

Dalam pertanyaan pangkalan data, klausa WHERE IN membenarkan anda menapis data berdasarkan senarai nilai yang ditentukan. Walau bagaimanapun, secara lalai, baris yang dikembalikan mungkin tidak dalam susunan yang sama seperti yang dinyatakan dalam klausa.

Untuk memesan baris mengikut susunan yang disediakan dalam klausa WHERE IN, anda boleh menggunakan ORDER BY FIELD( ) fungsi. Fungsi ini mengambil dua hujah:

  • Medan yang anda mahu isih baris mengikut (dalam kes ini, medan id)
  • Senarai nilai yang dipisahkan koma dari WHERE IN klausa

Sebagai contoh, diberikan pertanyaan berikut:

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72);
Salin selepas log masuk

Yang mengembalikan baris dalam tertib menaik mengikut ID, anda boleh menggunakan fungsi ORDER BY FIELD() untuk mendapatkan baris dalam susunan yang dinyatakan dalam klausa WHERE IN:

SELECT *
FROM table
WHERE id IN (118, 17, 113, 23, 72)
ORDER BY FIELD(id, 118, 17, 113, 23, 72)
Salin selepas log masuk

Dalam pertanyaan ini, fungsi ORDER BY FIELD() mengisih baris mengikut medan id, tetapi dalam susunan khusus 118, 17, 113 , 23, dan 72, seperti yang dinyatakan dalam klausa WHERE IN.

Menggunakan teknik ini, anda boleh memesan baris dengan mudah mengikut susunan yang dinyatakan dalam klausa WHERE IN anda, memastikan ia dikembalikan dalam urutan yang diingini.

Atas ialah kandungan terperinci Bagaimana Memesan Baris Berdasarkan Susunan dalam Klausa WHERE IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan