データベースの 2 つの列の結果でデータを並べ替えようとしています。
現在、私のデータのサンプルは次のようになっています。
name type state
paul 1 expired
john 3 expired
greg 1 active
jane 3 expired
joan 3 active
judy 2 expired
次のように、最初にアクティブで、次にタイプでデータを表示したいと思います。
name type state
greg 1 active
paul 1 expired
joan 3 active
jane 3 expired
john 3 expired
judy 2 expired
私はいくつかの組み合わせを試しました:
ORDER BY type desc, state desc
これにより、タイプ別に並べ替えることができますが、すべてのアクティブなものを最初に配置することはできません。また、状態とタイプで並べ替えましたが、すべてのアクティブなものが一番上に配置され、その下にタイプ別に並べ替えられます。
どんな提案でも大歓迎です!
答えを見つけようとしているときに、これらの2つの投稿を見てきましたが、これまでのところ運がありませんでした.
2 つの (同等に重要な) 列による条件付き MySQL 順序
- - 編集 - -
私が注文した場合
ORDER BY state, type
次の結果が得られます。
name type state
greg 1 active
joan 3 active
paul 1 expired
john 3 expired
jane 3 expired
judy 2 expired
----編集2----
私が注文した場合
ORDER BY type, state
途中で期限切れになっている次の結果が得られます。これは、はるかに大きなデータセットの小さなサンプルであるため、アクティブなレコードを最初に表示することに重点を置きたいと考えています。
name type state
greg 1 active
paul 1 expired
judy 2 expired
joan 3 active
john 3 expired
jane 3 expired
ご覧いただきありがとうございます。