Maison >base de données >tutoriel mysql >Comment puis-je calculer le nombre total d'heures à partir des différences horaires dans MySQL ?

Comment puis-je calculer le nombre total d'heures à partir des différences horaires dans MySQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-07 13:36:03423parcourir

How Can I Calculate the Total Hours From Time Differences in MySQL?

Calcul de la somme des différences de temps dans MySQL

Comme vous l'avez mentionné, vous disposez d'une table avec des valeurs date-heure dans un format spécifique et souhaite calculer le nombre total d'heures pour une période donnée, comme une semaine.

Pour calculer la différence entre les valeurs d'heure de début et de fin, vous pouvez utiliser la fonction TIMEDIFF(). Cependant, vous pourriez rencontrer des problèmes lorsque vous essayez de additionner les valeurs renvoyées.

Pour résoudre ce problème, envisagez d'utiliser l'approche suivante :

SELECT
  SEC_TO_TIME(SUM(TIME_TO_SEC(`time`))) AS total_time
FROM time_table;

Dans cette requête :

  • time représente la colonne contenant les valeurs de temps.
  • TIMEDIFF() calcule la différence entre les valeurs actuelles de début et de fin, renvoyant le résultat en secondes.
  • TIME_TO_SEC() convertit l'heure différence entre les secondes et les heures.
  • SUM() additionne les heures pour toutes les lignes du tableau.
  • SEC_TO_TIME() reconvertit le total des secondes dans un format d'heure, en l'affichant sous la forme "xx :xx:xx."

Cette approche vous fournira la durée totale sous forme de chaîne de temps formatée, telle que "40:53."

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn