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

Dynamiczny DESC i ASC Oracle w kolejności do

Jeśli chcesz, aby kolejność sortowania (ASC/DESC) była dynamiczna, możesz wykonać następujące czynności:

SELECT ...
Order By CASE WHEN InputParam = 'PRICE' THEN l_so * OFFER_PRICE END,
         CASE WHEN InputParam = 'ENDING SOON' 
              THEN l_so * (SYSDATE - EXPIRY_DATE) END, 
         CASE WHEN InputParam = 'DISCOUNT' THEN l_so * DISC_PERCENTAGE END,
         CASE WHEN InputParam = 'SAVING' THEN l_so * SAVING END

ze zmienną l_so który zawiera 1 lub -1 w zależności od pożądanej kolejności sortowania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konwertuj datę ciągu na datę i godzinę w Oracle

  2. Przykładowe schematy na GitHub

  3. Sprawdź, czy bieżąca data jest między dwiema datami Oracle SQL

  4. Używanie Substr z Instr do wyodrębniania ciągu w Oracle

  5. jak zrobić funkcję, aby zwrócić typ wiersza z tabeli w pl/sql?