SQL查询,包含来自另一个查询的平均值

时间:2014-07-28 19:05:23

标签: sql ms-access-2010

抱歉,我的标题不具有描述性,但我不确定该怎么说。

我有一个查询,其中包含需要在每个月末完成的某些报告的月份和年份数字。它有很多字段,但这个问题的重要内容是:qryReport

MonthNumber | YearNumber | AverageRwkPercent 
1           | 2014       | This is the field I need help with

和另一张表:tblRework

Date    | percent   | include | void  |
1/3/14  | 98        | true    | false |
1/4/14  | 100       | false   | false |
1/6/14  | 95        | true    | true  |
1/7/14  | 100       | true    | false |
1/9/14  | 94        | true    | false |
...

我想要的是TrueFalse之前12个月的MonthNumberYearNumber的所有百分比{1}}

对于此示例,我希望从2013年1月到2014年1月包含数字98,100和94,并将它们平均到tblReport

中的AverageRwkPercent列

有没有办法制作一个表达式或子查询来填充qryReport中的多个记录?

值得注意的是我在Access 2010中工作,但可以直接在SQL中工作。

由于

1 个答案:

答案 0 :(得分:2)

要小心,因为访问sql与sql server sql有点不同。在第二个我会说:

SELECT AVG (percent), 
DATEPART (mm, Date),
DATEPART (yyyy, Date)
FROM tblRework
WHERE include=1
AND void=0
GROUP BY DATEPART (mm, Date)
, DATEPART (yyyy, Date)

顺便说一句,如果你想要小数,你可能需要在应用AVG函数之前进行转换。