[SQL] Zeiterfassung - Zeiten ausrechnen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von HuNdI, 26. Oktober 2011 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 26. Oktober 2011
    Zeiterfassung - Zeiten ausrechnen

    Hallo Leute

    Ich bin gerade dabei eine Auswertung von Zeiten zu machen, welche in einer Zeiterfassung geloggt sind.
    Ich möchte wissen, wie lange gearbeitet wurde, in einem Zeitraum x - y.
    Gebucht werden kann:
    Arbeitszeit - Anfang & Ende
    Pausenzeit - Anfang & Ende
    Es ist nicht festgelegt, dass es jeden Tag einen Arbeitsanfang/Arbeitsende/etc geben muss, was z.B. der Fall ist wenn über 23:59:59 hinaus gearbeitet wird.
    in diesem Fall ist das Arbeits-/Pausenende bei 23:59:59, bzw. der Anfang bei 00:00:00.

    Mit diesem SQL-Statement würde ich die benötigten Daten auslesen:
    Code:
    SELECT
     PersonalNr,
     to_date(Zeitpunkt, 'dd.mm.yyyy HH24:MI:SS') as Zeitpunkt,
     DECODE( Buchung, '1', 'Arbeitszeit', '2', 'Arbeitszeit', '3', 'Pause', '4', 'Pause', NULL ) AS BuchungTyp,
     DECODE( Buchung, '1', 'Anfang', '2', 'Ende', '3', 'Anfang', '4', 'Ende', NULL ) AS BuchungZeit
    FROM
     ZeiterfassungLog
    WHERE
     Uhrzeit >= to_date('25.10.2011 00:00:00', 'dd.mm.yyyy HH24:MI:SS') AND
     Uhrzeit <= to_date('25.10.2011 23:59:59', 'dd.mm.yyyy HH24:MI:SS')
    ORDER BY
     PersonalNr,
     BuchungTyp,
     Zeitpunkt

    Ausgabe:
    Code:
    xx0005 25.10.11 05:02:02 Arbeitszeit Anfang
    xx0005 25.10.11 07:16:38 Arbeitszeit Ende
    xx0007 25.10.11 05:01:56 Arbeitszeit Anfang
    xx0007 25.10.11 07:16:55 Arbeitszeit Ende
    xx0012 25.10.11 11:35:13 Arbeitszeit Anfang
    xx0012 25.10.11 15:00:36 Arbeitszeit Ende
    xx0012 25.10.11 11:35:13 Pause Anfang
    xx0012 25.10.11 15:00:36 Pause Ende
    xx1004 25.10.11 07:40:31 Arbeitszeit Anfang
    xx1004 25.10.11 13:33:05 Arbeitszeit Ende
    xx1006 25.10.11 09:26:35 Arbeitszeit Anfang
    xx1006 25.10.11 16:07:12 Arbeitszeit Ende
    xx1001 25.10.11 07:43:17 Arbeitszeit Anfang
    ...
    Jetzt stehe ich vor dem Problem, dass ich nicht weiß, wie ich die Arbeits-/Pausenzeiten der Mitarbeiter zusammenbringen kann, sodass ich einen Zeitraum erhalte, mit dem ich weiter rechnen kann.

    Wenn jmd einen Vorschlag hat wäre ich sehr dankbar darum



    Edit: Erledigt
     
  2. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.