Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Sortieren nach abhängig von 2 Spaltenwerten

Sie möchten einen Wert generieren, nur um basierend auf der gewünschten Bedingung zu sortieren.

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

Sie zeigen das Datumsfeld nicht in Ihren Beispielausgaben an, daher weiß ich nicht, wie dieses Datum die Ausgabe segmentiert. Ich vermute, dass das Datum relevanter ist als der "gleiche Schlüsselwert", aber Sie können es überall dort platzieren, wo Sie den gewünschten Effekt erzielen.

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