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

SQL:行を検索し、一致する列の数に従って並べ替えますか?

    これは古い質問ですが、式を括弧で囲んで評価できるはずです

    SELECT   *           
    FROM     `cars`
    WHERE    `color` = "black"
       OR    `weight` = "heavy"
       OR    `type` = "limo"
    ORDER BY (   (`color` = "black")
               + (`weight` = "heavy")
               + (`type` = "limo") 
             ) DESC
    

    括弧内の各式は、trueの場合は1、falseの場合は0になります。したがって、その合計が一致数になります。



    1. 一時テーブルを作成せずに重複レコードを削除する

    2. CodeIgniterモデルでONDUPLICATEKEY UPDATEをどのように使用しますか?

    3. SQL Serverの計算列とは何ですか?

    4. 簡単な例を含むSQLServerRAISERRORステートメント