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

Comment pouvons-nous obtenir l'intervalle de temps de 15 minutes

Vous pouvez tronquer à la minute la plus proche pour mettre à zéro les secondes, puis soustraire le nombre de minutes pour revenir à l'intervalle de 15 minutes le plus proche après l'heure, puis appliquer vos décalages :

SELECT TRUNC( current_timestamp, 'MI' )
         - MOD( EXTRACT( MINUTE FROM current_timestamp ), 15 ) * INTERVAL '1' MINUTE
         - INTERVAL '30' MINUTE
         + INTERVAL '59' SECOND AS start_time,
       TRUNC( current_timestamp, 'MI' )
         - MOD( EXTRACT( MINUTE FROM current_timestamp ), 15 ) * INTERVAL '1' MINUTE
         - INTERVAL '15' MINUTE
         + INTERVAL '59' SECOND AS end_time,
       current_timestamp
FROM   DUAL

Sorties :

db<>violon ici