MySQLの FIELD()
>
機能:
SELECT name, description, ...
FROM ...
WHERE id IN([ids, any order])
ORDER BY FIELD(id, [ids in order])
FIELD()
(最初のパラメータ自体を除いて)最初のパラメータと等しい最初のパラメータのインデックスを返します。
FIELD('a'、'a'、'b'、'c')
1を返します
FIELD('a'、'c'、'b'、'a')
3を返します
これは、IDを IN()
に貼り付けた場合に、希望どおりに機能します。 句とFIELD()
同じ順序で機能します。