2010-09-08 4 views
2

J'essaie de comprendre comment trouver la moyenne d'un certain nombre de valeurs différentes de temps, les valeurs de temps sont des différences de temps à partir de 2 dates de sorte qu'ils seront dans le format hh:mm:ss.
Donc, si j'avais 4 valeurs de temps de:MySQL ou PHP date moyennes

00:11:05
00:01:30
00:04:25
00:09:50

I avoir du mal à comprendre cela.
Je pense que ces valeurs de temps devraient être converties en un certain type de valeur entière puis divisées puis reconverties en ce format d'heure.

Toute aide est appréciée.

Merci

+0

Quel type de données sont ceux-ci? –

+0

hh: mm: ss ne peut représenter que l'heure, pas la date, j'ai peur. Vous pouvez les convertir en secondes puis en moyenne. c'est-à-dire, 1 heure = 60 minutes = 3600 secondes. etc ... puis reconvertir si nécessaire –

+0

J'essaie de trouver la moyenne des valeurs de temps. Et le type de données est tout ce qui est renvoyé à partir d'un DATEDIFF. Donc, chacune de ces valeurs de temps ci-dessus est le résultat de faire DATEDIFF à 2 dates différentes. – Ian

Répondre

2
SELECT DATE_FORMAT(
    FROM_UNIXTIME(
     AVG(
       UNIX_TIMESTAMP(CONCAT('1980-01-01 ',timefield)) 
     ) 
    ), 
    '%H:%i:%s.%f') FROM times;