2014-07-04 31 views
0

我需要创建一个以六个月为间隔的平均值,直到数据库的开始时间。对于我来说,我想这个答案会是类似的。多个六个月期间的平均值

SELECT AVG(q1.Entry1) as AvgPerWeek 
FROM (SELECT COUNT(TestID) as Entry1, DATEPART(wk, TestDate) as Wk 
FROM Table1 
GROUP BY Year(TestDate), DATEPART(wk, TestDate))q1 

我的第二选择是试图通过SSRS来做到这一点,如果任何人有任何想法做到这一点。

任何帮助将不胜感激。

回答

0

如果没有可用的功能发明一个!我会使用CASE:

SELECT AVG(q1.Entry1) as AvgPerWeek 
FROM (SELECT COUNT(TestID) as Entry1, Year(TestDate), 
     CASE WHEN DATEPART(month, TestDate) between 1 AND 6 
     THEN 'first half' ELSE 'second half' END as term 
     FROM Table1 
     GROUP BY Year(TestDate), 
       CASE WHEN DATEPART(month, TestDate) between 1 AND 6 
        THEN 'first half' ELSE 'second half' 
       END 
    ) q1 
+0

工作。谢谢 – Akameriadoc