向视图添加行总计

时间:2014-11-07 14:40:44

标签: sql views

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作为每Total CompanyID列的总和。

我遇到问题,包括总和(J + F + M)作为第一个SQL要求companyID上的一个组,然后一旦这个分组,它就要求分组CompanyName等等。

感激不尽的任何帮助。

2 个答案:

答案 0 :(得分:0)

也许这......

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

答案 1 :(得分:0)

除非您已经有聚合查询,否则您不需要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;