2015-01-07 144 views
1

我尝试了第一次访问,我试图找出如何真正利用Access的惊人力量。如何在Access中查找平均值?

有了这个,我想找到每件物品的平均数量,但不知道该怎么做。我设置了2张桌子。其中一个是物品清单(沙,水等),然后与另一个表格建立关系,以显示数量和价格。

下面,查询1我设置和排序它(我不知道为什么它不是按字母顺序排列,即使我按升序排序,但那不是我为什么在这里)。那么有人可以帮助我试图找出如何在查询2中平均每件物品的数量?最终,我真的只想查询MaxAve和MinAve,并在下面的查询3中显示那些2。

Query 1    Query 2     Query 3 
fldName  fldNum  fldName  fldAve  fldName  fldAve  
Sand  4   Sand   4   Sand   4 
Sand  4   Water  3.8   Computer  3.35 
Water  3.7  Soda   3.43   
Water  4   Computer  3.35   
Water  3.7  Phone  3.43   
Soda  3.7  Pencil  3.75   
Soda  3.3   
Soda  3.3   
Computer 3.7   
Computer 3   
Phone  3   
Phone  3.3   
Phone  4   
Pencil  4   
Pencil  4   
Pencil  3   

就像我说的,我很新的访问,我只是想的东西出来。如果你建议以不同的方式设置查询,我真的打开任何东西。我越学越好。

+0

http://office.microsoft.com/en-ca/training/queries-ii-limit-your-data-and-calculate-values- RZ001126949.aspx?section = 14 –

+0

所以我要做的就是点击Totals按钮然后Total by Ave?那么我怎样才能让最高和最低的Ave出现? –

+0

@GordThompson? –

回答

1

要得到平均每个字段名,只是这样做的一个查询:

SELECT FieldName, Avg(FieldNum) as AvgQty 
FROM MyTable 
GROUP BY FieldName 
ORDER BY FieldName 

这也会为您挑选的字段名列。

编辑: 我认为你可以做你在你的评论中所要求的,但是你需要一个基于上面的单独查询。你需要一个UNION查询来完成它。例如:

SELECT Top 1 FieldName, AvgQty 
FROM Query1 
ORDER BY AvgQty ASC 

UNION ALL 

SELECT Top 1 FieldName, AvgQty 
FROM Query1 
ORDER BY AvgQty DESC 

我正在那样做我的头顶,所以它可能不完美。

至于格式化该领域,做一个谷歌的“VBA格式数量”,你应该能够找到一些例子。我认为它可能使上面的查询看起来是这样的:

SELECT Top 1 FieldName, Format(AvgQty, "##.#") as AvgQty1 
FROM Query1 
ORDER BY AvgQty ASC 

UNION ALL 

SELECT Top 1 FieldName, Format(AvgQty, "##.#") as AvgQty1 
FROM Query1 
ORDER BY AvgQty DESC 
+0

这几乎是完美的。现在它按平均值排序,我们可以格式化它,以便它不会说“3.433333333333333 ...”。另外,是否可以过滤它,以便它只显示最大值和最小值? –

+0

@RobertAnthonySvec - 查看我上面的修改 –