Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ewidencja czasu pracy na podstawie wejść i wyjść do budynku
staryhaliny
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 14.03.2011

Ostrzeżenie: (0%)
-----


Witam.

Zmagam się z problemem wyliczenia ilości czasu, w którym pracownik znajduje się w budynku.
Excel z całym dobrodziejstwem tabel przestawnych nie daje rady.
Próbuje więc to rozegrać za pomoca SQLa (MySQL).

Dane w tabela wyglądają m/w tak:

nazwisko | imie | bramka | data | godzina
Kowalski | Jan | WEJSCIE | 2011-02-02 | 07:30:20
Kowalski | Jan | WYJSCIE | 2011-02-02 | 09:22:23
Kowalski | Jan | WEJSCIE | 2011-02-02 | 09:35:43
Kowalski | Jan | WYJSCIE | 2011-02-02 | 16:12:15
Nowak | Marek | WEJSCIE | 2011-02-02 | 09:20:23
Nowak | Marek | WYJSCIE | 2011-02-02 | 17:30:12
Kowalski | Jan | WEJSCIE | 2011-02-03 | 07:29:32
Kowalski | Jan | WYJSCIE | 2011-02-03 | 09:23:33
itd.


Wszystko by było w porządku, gdyby ludzie przychodzili do pracy i wychodzili po jej skończeniu:

  1. SELECT nazwisko, imie, bramka, DATA TIME_FORMAT(TIMEDIFF(MAX(godzina),MIN(godzina)), '%H:%i') AS czas_pracy FROM `tab` GROUP BY nazwisko, DATA


ale nie... oni muszą jeszcze wyłazić w ciągu dnia na papieroski i w innych celach (IMG:style_emoticons/default/wink.gif)

Stąd prośba o pomoc, jak skontruował zapytanie aby można było wyliczyć tzw. efektywny czas pracy, czyli ten okres kiedy pracownik faktycznie przebywa w budynku.

Efektem końcowym mogła by być taka tabela:

nazwisko | imie | data | czas_pracy
Kowalski | Jan | 2011-02-02 | 08:30
Kowalski | Jan | 2011-02-03 | 07:40
Nowak | Marek | 2011-02-02 | 08:10


Jeśli ktoś ma pomysł na inne niż SQLowe rozwiązanie tego problemu, to też chętnie się dowiem.

Z gory dziękuję za wszelkie sugestie.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 14:42