次の順序で出席データを保持するSQL2008テーブルがあります。
uidクロックcollectdateタイプ 1 2012-10-30 16:13:07.000 2012-10-30 19:29:58.000 in 1 2012-10-30 21:18:50.000 2012-10-30 22:29:58.000 in 2 2012-10-30 16:13:07.000 2012-10-30 19:29:58.000 in 2 2012-10-30 21:18:50.000 2012-10-30 22:29:58.000 in
適切な順序は、「タイプ」列を「入力」および「出力」にすることです。しかし、これはまさに私が直面している問題です。システムは、インパンチまたはアウトパンチを行う前に、タイムレコーダーで常に正しいボタンを押すのを見逃すか、まったく押さない請負業者やパートタイマーを管理するために使用されています。
現在、タイムレコーダーデータを適切な順序に並べるために、このストアドプロシージャに依存しています
INSERT INTO出席TBL(UID、CollectDate、Clockin、Clockout) 選択する UID 、CollectDate 、MAX(type ='in' then clock endの場合)clockin 、MAX(type ='Out'の場合はクロック終了)clockout RAWCLOCKTBLから GROUP BY UID、CollectDate 戻る
「タイプ」列を無視して、「クロック」値を正しい順序で同じ行に移動する方法はありますか。つまり、上記のテーブルをに移動します。
uid時計時計 1 2012-10-30 16:13:07.000 2012-10-30 21:18:50.000 2 2012-10-30 16:13:07.000 2012-10-30 21:18:50.000