SQLで任意の行を優先して表示する

Tomohiro 53views 更新:2017年2月21日

SQLで、並べ替えを行うとき、ORDER BY句を使うが、特定の文字列を含む行は優先して上に表示したいときはCASE句も組み合わせる。

SELECT * FROM テーブル名 ORDER BY CASE 文字列を含むカラム名 WHEN 'ABC' THEN 1 ELSE 2 END, 日付 DESC"

こうすると、ABCという文字列を含む行があったとき、その行を優先して上に表示し、その他の行については日付順で並ぶようにできる。

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません