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

Jak rozłożyć średnią między dwoma interwałami w Oracle

EDYCJA:Dodano unię, aby uwzględnić ostatni brakujący wiersz

Niektóre takie rzeczy mogą działać. Zakładając, że dane wejściowe znajdują się w tabeli a,

with b as
(select level-1 lev
from dual
connect by level <= 60
),
v as
(
select start_date, value current_value, lead(value) over (order by start_date) next_value
from a
)
select start_date+ (lev)/(24*60), (current_value*((60-(b.lev))/60) + next_value*(b.lev)/60) avg_value
from v, b
where v.next_value is not null
union
select start_date, current_value
from v
where v.next_value is null
order by 1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. grant na tworzenie synonimów na innym schemacie (Oracle)

  2. Funkcja agregująca Oracle, aby zwrócić losową wartość dla grupy?

  3. Instrukcja ACCEPT w Oracle PL SQL

  4. audyt 50 kolumn za pomocą wyzwalacza Oracle

  5. Wprowadzenie do zmiennych PL/SQL w bazie danych Oracle