Mysql Durchschnittsdauer von Reparaturen berechnen

swamp1001

Mitglied
Guten Abend,

ich habe folgendes Problem:
Ich habe eine mysql Datenbank in der das Datum an dem die Reparatur angenommen wurde steht und das Datum an dem die Reparatur fertig gestellt wurde und nun möchte ich gerne über mysql berechen wieviele Tage die Reparaturen im durchschnitt gedauert haben.

Ich habe keine Ahnung wie ich das mit mysql hin bekomme.
Vieleicht kann mir jemand helfen :confused:

Gruss
Carsten
 
Die Reparaturen dauern ja nicht immer gleich lang und ich möchte gerne wissen wie lange im durchschnittliche eine Reparatur dauert.

Danke für den Link aber ich blicke da nicht durch, vieleicht kann mir bitte jemand ein Query erstellen damit ich das berechen kann.

GLG
Carsten
 
Zuletzt bearbeitet:
Hi,

wenn das in etwa so aussieht, dann kann ich dir da (glaub ich) helfen:

SQL:
SELECT * FROM reperaturen

Code:
ID     Start        Ende
==============================
1      01.01.2009   03.02.2009
2      05.01.2009   10.02.2009
...


Hierzu musst du mal von jedem Eintrag die Dauer ausrechnen. Wie asipak4you schon gesagt hat, geht das am Besten über die DATEDIFF()-Funktion.
Wenn man diese verwendet, dann sieht die Query so aus:


SQL:
SELECT ID, DATEDIFF(Ende, Start) AS Dauer FROM reperaturen

Code:
ID     Dauer
===========
1      2
2      5
...


Jetzt brauchst du dann noch den Durchschnitt aller Werte. Dies erreichst du über die Gruppierungsfunktion AVG(). Wenn du diese in obiges Beispiel einfügst, dann sieht die Abfrage so aus:


SQL:
SELECT AVG(DATEDIFF(Ende, Start)) AS Durchschnitt FROM reperaturen

Code:
Durchschnitt
===========
3.500000


Tada, nun hast du das gesuchte ;) Kann dir aber nicht versprechen, dass obiges 100%-ig funktioniert, da ich hier gerade kein MySQL zum testen habe :D

Quellen (alle im MySQL Referenzhandbuch):
DATEDIFF()
AVG()

Gruß
BK

// Edit: Mist, da war einer schneller :P
 
Zurück