Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment saisir l'événement suivant lorsque le décalage est variable ?

Il semble que vous souhaitiez que les premières et dernières transactions soient basées sur le temps. Je pense que ce qui suit fait ce que vous voulez :

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;