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

Uporządkuj wiersze przy użyciu kolumn od mniejszej liczby wartości null do braku wartości null

To jest dość bolesne. Zasadniczo jedna metoda wykorzystuje ogromny dodatek case wyrażenia, takie jak:

order by 
    (case when cod_t1 is null then 1 else 0 end)
    + (case when cod_t2 is null then 1 else 0 end)
    + (case when cod_t3 is null then 1 else 0 end)
    + ...

Znacznie prościej byłoby naprawić model danych, aby przechowywać kody jako wiersze zamiast kolumn. Następnie możesz użyć agregacji:

select id, quarter
from mytable
group by id, quarter
order by count(cod) 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. kursor:pin S czekaj na X

  2. Odejmowanie znacznika czasu w Oracle zwraca dziwne dane

  3. Oracle JDBC:Skąd wiedzieć, który wiersz rzuca unikalne ograniczenie klucza?

  4. co to są zmaterializowane poglądy w wyroczni?

  5. Jaki jest elegancki sposób na zwrócenie czytelnego „rozmiaru pliku” pliku przechowywanego w kolumnie obiektów blob Oracle przy użyciu SQL?