リンク
###前提
tb_user_work_timeというDBがあります。
user_id | work_time | work_date |
---|---|---|
1 | 07:00:00 | 2020-03-01 |
1 | 09:00:00 | 2020-03-02 |
2 | 12:00:00 | 2020-03-01 |
2 | 09:00:00 | 2020-03-02 |
3 | 08:00:00 | 2020-03-01 |
3 | 03:00:00 | 2020-03-02 |
このDBのユーザーごとに残業時間の合計時間を求めました。
ここでいう残業時間とは、1日に8時間を超えて働いた時間です。
なので以下のように、work_timeが8時間以上の時の、合計を算出しました。
sql
1SELECT user_id, SUM(work_time - 80000) 2FROM `tb_user_work_time` 3WHERE `tb_user_work_time`.`work_time` > ‘80000’ 4GROUP BY user_id;
結果
user_id | SUM(work_time - 80000) |
---|---|
1 | 01:00:00 |
2 | 03:00:00 |
3 | 00:00:00 |
本題
これに対して、残業時間の合計時間SUM(work_time - 80000) が2時間以上になる時だけ、
表示をするようなSQLがわかりません。
work_timeはtime型で、8時間以下になる時もあります。
追加として必要な情報があれば、コメントしていただけると嬉しいです。
###バージョン
サーバのバージョン: 5.6.47 - MySQL Community Server (GPL)
回答2件
あなたの回答
tips
プレビュー