Maison > base de données > tutoriel mysql > le corps du texte

Comment convertir la sortie MySQL TIMEDIFF au format jour, heure, minute, seconde ?

DDD
Libérer: 2024-10-24 02:03:02
original
872 Les gens l'ont consulté

How to Convert MySQL TIMEDIFF Output into Day, Hour, Minute, Second Format?

Conversion des sorties de différence de temps au format jour, heure, minute, seconde

Lors du calcul de la différence entre deux valeurs de temps à l'aide de la fonction TIMEDIFF de MySQL, vous pouvez obtenir des résultats au format heures, minutes et secondes. Cependant, il peut y avoir des cas où vous aurez besoin que ce résultat soit affiché de manière plus conviviale, par exemple en affichant le nombre de jours, d'heures, de minutes et de secondes.

Considérez la requête suivante :

<code class="sql">SELECT TIMEDIFF(end_time,start_time) AS "total" FROM `metrics`;</code>
Copier après la connexion

Si les colonnes end_time et start_time contiennent des valeurs telles que « 2023-03-08 12:34:56 » et « 2023-03-04 15:12:34 », la requête renverra le décalage horaire comme '105:08:22'. Bien que cela indique la durée totale de 105 heures, 8 minutes et 22 secondes, ce n'est peut-être pas la représentation la plus pratique pour l'utilisateur.

Pour convertir cette sortie dans un format plus lisible par l'homme, vous pouvez utiliser l'approche suivante :

<code class="sql">SELECT CONCAT(
FLOOR(HOUR(TIMEDIFF(end_time,start_time)) / 24), ' days ',
MOD(HOUR(TIMEDIFF(end_time,start_time)), 24), ' hours ',
MINUTE(TIMEDIFF(end_time,start_time)), ' minutes')</code>
Copier après la connexion

Remplacez end_time et start_time par vos colonnes spécifiques dans la requête. La sortie sera au format « jours heures minutes ». Par exemple, le décalage horaire de « 105:08:22 » s'afficherait sous la forme « 4 jours 9 heures 8 minutes ».

Il est important de noter que cette méthode n'est applicable qu'aux décalages horaires compris dans les 35 jours. Pour les décalages horaires s'étendant sur plus d'un mois, des approches alternatives telles que l'utilisation de TIMESTAMPDIFF() peuvent être plus appropriées.

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!

source:php
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!