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

2つの列の値に応じて並べ替える

    必要な条件に基づいてソートするためだけに値を生成したいとします。

    ORDER BY fruit_id desc,
             a.rev_date desc,
             case when fruit_id = primary_fruit_id then 0 else 1 end
    

    サンプル出力に日付フィールドが表示されていないため、その日付が出力をどのようにセグメント化するかわかりません。日付は「同じキー値」よりも関連性が高いと思いますが、必要な効果が得られる場所であればどこにでも配置できます。

    ORDER BY fruit_id desc,
             case when fruit_id = primary_fruit_id then 0 else 1 end,
             a.rev_date desc
    
    ORDER BY case when fruit_id = primary_fruit_id then 0 else 1 end,
             fruit_id desc,
             a.rev_date desc
    


    1. ファイルまたはアセンブリを読み込めませんでした Microsoft.ReportViewer.WebForms.XmlSerializers

    2. SQLiteで外部キーサポートを有効にする方法

    3. AndroidStudioにMySQLJDBCドライバーを作成する方法

    4. SQLServerで行を列に効率的に変換する