Oracle
 sql >> Database >  >> RDS >> Oracle

Come afferro l'evento successivo quando l'offset è variabile?

Sembra che tu voglia la prima e l'ultima transazione in base al tempo. Penso che quanto segue faccia quello che vuoi:

select item,
       min(transaction) keep (dense_rank first order by timestamp) as StartTx, 
       min(transaction) keep (dense_rank last order by timestamp) as EndTx,
       max(timestamp) - min(timestamp)
from transactions t
group by item;