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

Jak obliczyć zmiany w Oracle sql

Spróbuj tego:

select t.* 
, case when attr1 != LAG(attr1, 1, attr1) OVER (PARTITION BY hid_1, hid_2 ORDER BY attr5) then 1 else 0 end +
  case when attr2 != LAG(attr2, 1, attr2) OVER (PARTITION BY hid_1, hid_2 ORDER BY attr5) then 1 else 0 end +
  case when attr3 != LAG(attr3, 1, attr3) OVER (PARTITION BY hid_1, hid_2 ORDER BY attr5) then 1 else 0 end +
  case when attr4 != LAG(attr4, 1, attr4) OVER (PARTITION BY hid_1, hid_2 ORDER BY attr5) then 1 else 0 end as attr6
from t


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy można opisać tabelę i najpierw wyświetlić kolumny NOTNULL?

  2. Uwierzytelnianie za pomocą kluczy publicznych i cx_Oracle przy użyciu Pythona

  3. Zwiększenie grupy dysków VOTE w ASM dla aktualizacji GI 12.2

  4. Jak uzyskać ścieżkę tabeli hierarchii?

  5. Jak wyświetlić rekord o najwyższej wartości w Oracle?