在下面,我发现了平均在今年各部门 从每个月的查询。我试图获得平均从今年所有 部门。如何获得一年中所有部门的平均值?
例如五月在2014年我会得到2.675的平均, 2014年6月将是2.532。
我怎样才能为各部门在今年每个月的平均数是什么?
这里是我的查询,我得到的平均值,从每个部门:
SELECT employeedept,YEAR_cse,csedept_name,
SUM(January) as January,SUM(February) as February,SUM(March) as March,SUM(April) as April
,SUM(May) as May,SUM(June) as June,SUM(July) as July,SUM(August) as August
,SUM(September) as September,SUM(October) as October,SUM(November) as November,SUM(December) as December
FROM (SELECT employeedept,
(ROUND(AVG(case when rating1>0 THEN CAST(rating1 AS FLOAT) ELSE null END), 2) +
ROUND(AVG(case when rating2>0 THEN CAST(rating2 AS FLOAT) ELSE null END), 2) +
ROUND(AVG(case when rating3>0 THEN CAST(rating3 AS FLOAT) ELSE null END), 2) +
ROUND(AVG(case when rating4>0 THEN CAST(rating4 AS FLOAT) ELSE null END), 2) +
ROUND(AVG(case when rating5>0 THEN CAST(rating5 AS FLOAT) ELSE null END), 2)) /5 as AG,
count(*) as 'totalstars',month_cse= datename(month,execoffice_date),YEAR_cse =YEAR(execoffice_date)
FROM CSEReduxResponses
Where YEAR(execoffice_date) = 2014
group by employeedept,month(execoffice_date),YEAR(execoffice_date),DATENAME(month,execoffice_date)
)
AS r
JOIN CSEReduxDepts d
ON d.csedept_id = r.employeedept
AND YEAR_cse is NOT NULL
PIVOT(SUM(AG)
FOR [month_cse] IN (
[January],[February],[March],[April],[May],[June],[July],[August], [September],[October],[November],[December]
)) AS pvt
Group BY employeedept,YEAR_cse,csedept_name
我以虚拟数据作出了http://sqlfiddle.com/#!3/9d97e/1。
检查编辑我的答案。它应该给你你想要的。 –