基本上,我有这个-
SELECT COUNT(student_dormpm.DormCode) * dorm_datapm.DormCharge
FROM student_dormpm
JOIN dorm_datapm
USING (DormCode)
GROUP BY DormCode;
结果是
+---------------------------------------------------------+
| COUNT(student_dormpm.DormCode) * dorm_datapm.DormCharge |
+---------------------------------------------------------+
| 5250.00 |
| 11250.00 |
| 9600.00 |
| 6500.00 |
| 5510.00 |
+---------------------------------------------------------+
但每当我尝试添加sum()时,它就会崩溃,并出现一个错误,即group函数的使用无效。
我试过了 SUM(COUNT(student_dormpm.DormCode) * dorm_datapm.DormCharge)
2条答案
按热度按时间f45qwnt81#
看起来像
dorm_datapm
你的宿舍桌上每小时有一张唱片吗DormCode
与相关的DormCharge
. (在这种情况下,表名dorm
不过,这可能更合适。)如果是这样的话,那么你只需要把宿舍费用加起来:
但是,如果
dorm_datapm
可以有多个记录DormCode
,然后您将必须查看,上面的查询是获得所需的结果,还是要加入student_dormpm
只有一个的行dorm_datapm
行(在这种情况下,您必须以某种方式扩展联接条件)。如果你只寻找总数,那么不要分组
DormCode
:ny6fqffe2#
使用
sum
在整个第一个查询输出中,别名t
指定给第一个查询输出(以模拟新表)和别名total
指定给计数器以便您可以计算sum(total)
: