Zeitensumme

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Zeitensumme

Re: Zeitensumme

von Barlee » Di, 03.06.2008 21:01

Hallo Zerstreuter,

Du könntest die Stunden und MInuten aus den Timestamp-Feldern extrahieren und diese als Vergleichskriterium einsetzen.

Code: Alles auswählen

CASE WHEN  (concat(extract(HOUR from "Start"),concat(':',extract(MINUTE from "Start")))) < '12:15' and 
(concat(extract(HOUR from "Stop"),concat(':',extract(MINUTE from "Stop")))) > '12:45'  
THEN datediff('mi', "Start", "Stop")-25  
END as "Test"
Gruß Barlee

Re: Zeitensumme

von der_Zerstreute » Di, 03.06.2008 19:26

Danke schonmal für deine Hilfe ..

hab das soweit in die Abfrage einbauen können. jetzt stolper ich über ein rechnerisches Problem. ich muß Pausen rausrechnen wenn die Arbeit über die Pause hinweg ging .. Will sagen .. Arbeit beginnt vor der Pause , Pause wird eingehalten, und danach gehts weiter .

nun sind die beiden Start und Stop felder Timestamp felder kann ich da mit casewhen einfach einen vergleich wie

Code: Alles auswählen

casewhen( "start" <12:15 and "fertig" >12:45 , "zeitdiff" - 0:25) 
einfügen ? oder geht das wegen timestamp nicht ?

Wär schön wenn Sie mir da noch nen Tip geben könnten.
Achja , in einigen Feldern tauchen umlaute wie ä auf stört sich sql daran ?
danke schonmal im vorraus

Re: Zeitensumme

von Barlee » Fr, 23.05.2008 22:06

Hallo der_Zerstreute,

GROUP BY ist hier die Lösung.
Angenommen Du hast die Spalten "Arbeit" und "benötigte Zeit" ( als Diff zwischen Start und Ende), dann fasst Du das folgendermaßen zusammen:

Code: Alles auswählen

Select
Arbeit,
sum(benötigte_Zeit) as Zeit_Gesamt
from
[Deine Tabelle]
group by Arbeit
Beziehst Du mehr Spalten in die Abfrage ein, dann musst Du diese entsprechend in der "GROUP BY"-Klausel berücksichtigen.

Gruß Barlee

Zeitensumme

von der_Zerstreute » Do, 22.05.2008 11:15

Hallo Leute ,

in meiner Datenbank fasse ich meine Tätigkeitszeiten zusammen.
Nun habe ich eine Abfrage erstellt in der ich gern folgede informationen wiederfinden würde :
  • startzeit
  • fertigzeit
  • arbeit
  • benötigte Zeit (per datediff)
  • gefiltert nach aktuellem Monat per month vergleich
^-- soweit so einfach.

Jetzt möchte ich das ganze aber gern zusammenfassen also alle gleichen Arbeiten werden in der Zeit summiert und als eine Zeile angezeigt. wie stell ich das an?
Die Abfrage stellt die Summen-funktion aber wie schränke ich die auf die gleichen Arbeiten ein ?
mein SQL ist noch sehr schlecht und ich hoffe hier kann mir dabei einer helfen.
Achja die Datenbank ist im OOO Format.

gruß & Dank

Nach oben