- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQLで時間差分とその合計の求め方)
SQLで時間差分とその合計の求め方
このQ&Aのポイント
- ACCESS2007のデータベースで、職員の入室時間と退室時間の差分を計算する方法を教えてください。
- 複数の職員の入室時間と退室時間が記録されたデータを使って、職員ごとの入室時間の合計を計算したいです。
- SQLのDATEDIFF関数ではひとつのデータしか計算できないため、他の方法を探しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> SQLの『DATEDIFF』ではひとつのデータしか計算できないようなのですが まずは職員ごとではなく、各入退室に対する 「入室していた時間」 をけいさんするのだからそれで OK あとはそれを集計系の SQL でまとめるだけ。 職員名でグループ化して、入室していた時間の値を合計する。 Access の SQL でよければこんな感じ。 "入室時間" と "体質時間" は言葉の使い方が間違ってるので勝手に "入室時刻" と "退室時刻" に変えた。 そんで 「入室していた時間」 を "入室時間" という列にしてみた。 入室時間の単位は分にしてある。 SELECT 履歴.職員名, Sum(DateDiff("n",[履歴]![入室時刻],[履歴]![退室時刻])) AS 入室時間 FROM 履歴 GROUP BY 履歴.職員名; 職員名 入室時間 A 120 B 20 C 150
お礼
ありがとうございます 参考になりました。
補足
ACCESS上での集計は回答での方法で可能なのですが VB2010のフォーム上で集計させる場合はSQLをどう変更すればいいでしょうか? 色々試しましたが、エラーばかりでうまく動作しません よろしくお願いします。