Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Uporządkuj według w zależności od wartości 2 kolumn

Chcesz wygenerować wartość tylko do sortowania na podstawie żądanego warunku.

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

Nie pokazujesz pola daty w przykładowych danych wyjściowych, więc nie wiem, jak ta data dzieli dane wyjściowe. Domyślam się, że data jest bardziej odpowiednia niż „ta sama wartość klucza”, ale możesz umieścić ją w dowolnym miejscu, aby uzyskać pożądany efekt.

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd ogólny:1008 OCIStmtExecute:ORA-01008:nie wszystkie zmienne są powiązane

  2. Oracle DB Server + APEX + ORDS + JasperReports od podstaw (Część 1)

  3. Wyjaśnienie dotyczące rownum

  4. INST_TOP (Oracle R12 INSTANCE_HOME) odkodowane

  5. Jak sprawić, by MERGE można było serializować?