Mailinglisten-Archive |
Timo Maier schrieb am Freitag, den 13. August 1999: > Zum Knobeln fuer's Wochenende (: Immer her damit ... ;-) > Der Table sieht etwa so aus: > > PersonalNummer int(5) > Kommt DateTime > Geht DateTime > > Die Zeiten sind sekundengenau abgespeichert, es soll bei kommt auf > die nexte 1/4h aufgerunded werden, bei geht abgerundet, wobei > jedesmal 2 Min. Toleranz zugelassen sind. SELECT PersonalNummer , DATE_FORMAT(Kommt, '%Y-%m-%d') AS datum , SEC_TO_TIME( SUM( FLOOR((TIME_TO_SEC(Geht )+120)/900) - CEILING((TIME_TO_SEC(Kommt)-120)/900)) * 900 ) AS zeit FROM t GROUP BY PersonalNummer, datum; Ich geh' dabei davon aus, daß sich Arbeitszeiten nie über Datumsgrenzen hinweg erstrecken. Für solche Sonderschichten oder Nachtarbeit müßte man halt einen für den erste Tag bis Mitternacht und einen für den zweiten Tag ab MItternacht speichern. Ciao, Martin -- Martin Ramsch <m.ramsch_(at)_computer.org> <URL: http://home.pages.de/~ramsch/ > PGP KeyID=0xE8EF4F75 FiPr=52 44 5E F3 B0 B1 38 26 E4 EC 80 58 7B 31 3A D7 --- *** Abmelden von dieser Mailingliste funktioniert per E-Mail *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive