スタッフが出勤/退勤するためのタイムカードテーブルがあります。レイアウトは次のとおりです。
employeeID Clock-in DateTime Clock Type
1004 24/09/2013 13:08 in
1004 25/09/2013 00:50 out
1005 24/09/2013 12:08 in
1005 25/09/2013 03:55 out
2003 24/09/2013 10:06 in
2003 24/09/2013 15:42 out
2003 24/09/2013 17:33 in
2003 24/09/2013 22:17 out
どうすれば次のようになりますか:
Date employeeID Clock-in Clock-out time worked (in hours to 2 decimal place)
24/09/2013 1004 24/09/2013 13:08 25/09/2013 00:50 xx.xx
24/09/2013 1005 24/09/2013 12:08 25/09/2013 03:55 xx.xx
24/09/2013 2003 24/09/2013 10:06 24/09/2013 15:42 xx.xx
24/09/2013 2003 24/09/2013 17:33 24/09/2013 22:17 xx.xx
ノート:
- 従業員は複数の出勤/退勤が可能です (つまり、朝/午後、夜勤)
- 日付は から
04:00:00
まで03:59:59
(つまり、上記の例では、すべて として分類されます24/09/2013
) - 退勤時間のないレコードを処理するにはどうすればよいですか? if
null
、 time equals to next date のようなものを設定できます03:59:59
か?
前もって感謝します。
私はjodsの提案で次のように更新しました:
3 セットの入出力レコードの例
EmployeeID CardDate PunchType
1000 21/09/2013 07:43 in
1000 21/09/2013 11:29 out
1000 21/09/2013 12:39 in
1000 21/09/2013 20:37 out
1000 21/09/2013 21:58 in
1000 22/09/2013 00:16 out
クエリが返されます
Date EmployeeID clockInTime clockOutTime
21/09/2013 1000 07:43:57 00:16:22
21/09/2013 1000 21:58:40 11:29:22