Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 子查询之和_Mysql - Fatal编程技术网

Mysql 子查询之和

Mysql 子查询之和,mysql,Mysql,我真的被这个mysql查询困住了。 我正在帮助一位朋友创建staff/event数据表。 我已经成功地创建了一个虚拟表,可以查看每个员工每次活动的成本。 在下面的查询中,我正在选择事件 SELECT event.eventid, costs.staffnumber, cost _hour *( SUM( TIME_TO_SEC( TIMEDIFF( hours, pause ) ) ) ) /3600 AS costs_event FROM costs, event WHERE costs.st

我真的被这个mysql查询困住了。 我正在帮助一位朋友创建staff/event数据表。 我已经成功地创建了一个虚拟表,可以查看每个员工每次活动的成本。 在下面的查询中,我正在选择事件

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
如果我删除
按事件分组.staffnumber
它确实给了我一个错误的值。 因为不同的行有不同的值,但它只是假设每个staffmember都有相同的
成本\u小时

样本:

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

当我把
按事件分组的员工人数
拿走时,我得到了210欧元(14小时*15欧元)

那么,我现在如何总结
costs\u event
列,并按
event.eventid
对它们进行分组呢

如果有任何帮助,我将不胜感激

干杯

包括总额中的每小时成本:

SELECT event.eventid, 
       costs.staffnumber, 
       SUM( cost _hour*TIME_TO_SEC(TIMEDIFF(hours, pause)) ) /3600 AS costs_event
FROM costs
JOIN event
  ON costs.staffnumber = event.staffnumber
GROUP BY event.eventid