sql >> データベース >  >> RDS >> Mysql

SQL IN()句の値の順序による順序付け

    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() 同じ順序で機能します。



    1. SQL Serverの問題を数分で検索、優先順位付け、および解決

    2. PHP5.5のpassword_hashおよびpassword_verify関数を使用する

    3. インストールされているSQLServerインスタンスとそのバージョンを確認するにはどうすればよいですか?

    4. 多言語データベース設計のベストプラクティス