我真的被这个mysql查询困住了。我正在帮助一位朋友创建员工/活动数据表。我已经成功创建了一个虚拟表,可以查看每个工作人员每个事件的成本。在下面的查询中,我选择了事件
SELECT event.eventid, costs.staffnumber, cost _hour *( SUM( TIME_TO_SEC( TIMEDIFF( hours, pause ) ) ) ) /3600 AS costs_event
FROM costs, event
WHERE costs.staffnumber = event.staffnumber
GROUP BY event.eventid, event.staffnumber
如果我拿走group by event.staffnumber
它确实会给我一个错误的价值。因为不同的行有不同的值,但它只是假设每个员工都有相同的值cost_hour
。
样本:
1001 (Eventid)
42 (staffnumber)
112,50 (Costs Sum from 15 EUR * 7,5 hours)
第二行
1001
41 (staffnumber)
78 (Costs Sum from 12 * 6,5 hours)
所以我想得到 190,50
当我拿走时,group by event.staffnumber
我得到 210 欧元(14 小时 * 15 欧元)。
那么我现在如何总结该costs_event
列并按event.eventid
.
将不胜感激任何帮助。
干杯