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

Requête SQL pour calculer les heures passées de l'autre jour et se terminant le lendemain

Il s'agit d'une requête Oracle pour calculer uniquement la différence de temps. Je pense que cela devrait fonctionner dans n'importe quel SQL si vous remplacez dual par votre table. Il existe des fonctions LAG/LEAD pour comparer les valeurs des lignes précédentes/suivantes, mais je ne sais pas si elles sont disponibles dans votre version de SQL. J'espère que cela vous sera utile :

SELECT trunc(mydate / 3600) hr
 , trunc(mod(mydate, 3600) / 60) mnt
 , trunc(mod(mydate, 3600) / 60 /60) sec
  FROM 
  (
   SELECT (to_date('01/02/2013 23:00:00', 'mm/dd/yyyy  hh24:mi:ss') -
           to_date('01/01/2013 07:00:00', 'mm/dd/yyyy  hh24:mi:ss')) * 86400 mydate
    FROM dual
  )
 /