[英]Add a row total to a view
SQL的新手,我希望做一些月收入和季度/年度总计的工作。
我有一个模拟视图,它从公司表(给我们公司ID和CompanyName)和收入表(给我们剩下的4列)中提取信息,如下所示:
CompanyID |CompanyName |IncomeType |Jan |Feb |Mar
-----------------------------------------------------------
1 |Big Stuff |Cars |1000 |200 |500
2 |Huge Stuff |Lorries |2000 |4000 |5000
我想要的是能够将Jan + Feb + Mar作为每个CompanyID
的Total
列求和。
我在包含sum(J + F + M)时遇到问题,因为第一个SQL要求在companyID
上进行分组,然后对它进行分组,然后再对CompanyName
进行分组,依此类推。
非常感谢任何帮助。
也许这个...
SELECT C.companyID, C.CompanyName, C.IncomeType, sum(Jan) J , sum(Feb) F,
sum(Mar) M, sum(Jan+Feb+Mar) as Total
FROM company C
INNER JOIN Income I
on C.CompanyID = I.CompanyId
GROUP BY C.companyID, C.CompanyName, C.IncomeType
除非已经有聚合查询,否则不需要sum()
。 因此,类似:
select c.companyID, c.CompanyName, i.IncomeType, i.Jan, i.Feb, i.Mar,
(i.Ja + i.Feb + i.Mar) as Total
from company c join
income i
on c.companyid = i.companyid;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.