私は PHP/MySQL タイムシート システムに取り組んでおり、作成したいレポートは、2 つの日付の間で必要な時間よりも少ない時間しか働いていないすべての従業員を選択します。従業員の時間は時間と分 (INT) で保存されますが、私は時間だけに関心があります。
従業員テーブルは次のようになります。
ID | Name
1 | George
2 | Fred
timesheet_entry テーブル:
ID | employeeID | hour | date
1 | 1 | 2 | 2013-07-25
2 | 2 | 4 | 2013-07-25
3 | 1 | 3 | 2013-07-25
したがって、2013 年 7 月 25 日に勤務時間が 5 時間未満 (PHP 変数 hrsLimit) の従業員を SELECT すると、ジョージはその日に合計 5 時間勤務したため、2 Fred が返されます。ユーザーがクエリの変数を設定できるように、HTML フォームがあります。
私が試してみました:
SELECT employeeid,
employeename
FROM employee
JOIN timesheet_entry tse
ON tse.tse_employeeid = employeeid
AND Sum(tse.hour) < $hrslimit
日付はまだ気にしていません。
ここでややこしいのは、2 つのテーブルを結合していることです。おそらく時間を選択し、代わりに SUM 句を WHERE の最後に配置する必要がありますか?