![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Maik W. aus E., 30. 12. 2005, 19:46
Tach zusammen,
ich bastele gerade an einem Zeitverwaltungs-System und bin dabei auf einen mysteriösen Fehler gestoßen:
Aus der Tabelle der verwendeten Zeiten lasse ich mitSELECT name, projekt_ref, TIMEDIFF( ende, anfang ) AS diff
FROM azvs_arbeiten
WHERE blabla
alle "verbrauchten" Zeiten aus den (mit TIME formatierten) Spalten ausgeben. So weit, so gut. Wenn ich jetzt aber die einzelnen Arbeiten zusammenfassen will:
SELECT name, projekt_ref, SUM(TIMEDIFF(ende,anfang))as diff
FROM azvs_arbeiten
WHERE blabla
GROUP BY name
kommt nur eine Ganzzahl heraus, die die Werte hinter dem ":" nicht berücksichtigt, also auch nicht rundet. Meine Versuche mit SUBTIME
brachten keine Unterschiede.
Hat jemand eine Idee, wie ich meine Minuten auch mit in's Spiel bekomme?
Danke und
http://www.gruss-aus-essen.de
Maik
Die folgende Nachricht zum Thema stammt von: Axel Richter, 31. 12. 2005, 12:12
Hallo,
»» Wenn ich jetzt aber die einzelnen Arbeiten zusammenfassen will:
»»
»» SELECT name, projekt_ref, SUM(TIMEDIFF(ende,anfang))as diff
»» FROM azvs_arbeiten
»» WHERE blabla
»» GROUP BY name
»»
»» kommt nur eine Ganzzahl heraus, die die Werte hinter dem ":" nicht berücksichtigt, also auch nicht rundet. Meine Versuche mit SUBTIME
»» brachten keine Unterschiede.
Kann es zu einem namen unterschiedliche projekt_ref geben? Wenn nein, dann muss die Gruppierung
... GROUP BY name, projekt_ref
heißen. Wenn doch, dann muss projekt_ref aus der Feldliste raus.
»» Hat jemand eine Idee, wie ich meine Minuten auch mit in's Spiel bekomme?
Summiere Sekunden, indem Du das Time-Format mit TIME_TO_SEC(time) in ein rein numerisches Format umwandelst:
... SUM(TIME_TO_SEC(TIMEDIFF(ende,anfang)))...
und wandle diese ggf. wieder in ein Time-Format zurück:
SEC_TO_TIME(seconds):
... SEC_TO_TIME(SUM(TIME_TO_SEC(TIMEDIFF(ende,anfang))))...
viele Grüße
Axel
Die folgende Nachricht zum Thema stammt von: Maik W. aus E., 31. 12. 2005, 14:14
Tach auch Axel,
»» »» Hat jemand eine Idee, wie ich meine Minuten auch mit in's Spiel bekomme?
»» Summiere Sekunden, indem Du das Time-Format mit TIME_TO_SEC(time) in ein rein numerisches Format umwandelst:
»» ... SUM(TIME_TO_SEC(TIMEDIFF(ende,anfang)))...
Ah, o.k. Also so doch so herum. Ich dachte es gäbe einen Parameter bei SUM(), den ich übersehen habe...
Guten Rutsch und
http://www.gruss-aus-essen.de
Maik
© 1998-2008
Impressum, Software: Classic Forum