我最近开始使用SQL,但在将它应用于Access时遇到了问题。我以前的经验(有限)是使用PostgreSQL,我知道Microsoft Access中的SQL要求您将查询嵌套到子查询中,而我对此并不熟悉。
我相信SQL中的代码(不是access的代码应该是这样的……)
select weeks, sum(sweets_eaten), count(distinct (sweet))
from table
group by weeks;这将给我一个表格,我将在其中有独特的周,每周吃的糖果总数和每周的糖果数量。
理想情况下,查询还将通过将每周吃的糖果总数除以糖果的数量来告诉我每周平均吃的糖果数量。
有没有人知道如何编写查询以便在Microsoft Access中工作?
谢谢!
编辑过的代码,这就是我要输入的
select f15, sum(f16), count(*)
from (select f15, sum(f16) as sum_sweets_eaten
from table1
group by f15, f16
) as t
group by f15;对于平均值,是否有可能在总和之外做这个。
发布于 2017-12-19 23:26:42
您编写的查询在MS Access中不起作用,因为它不支持count(distinct)。
您可以预聚合以获得您想要的结果:
select weeks, sum(sum_sweets_eaten), count(*)
from (select weeks, sum(sweets_eaten) as sum_sweets_eaten
from table
group by weeks, sweet
) as t
group by weeks;要获得平均值,请使用avg()而不是sum()。
https://stackoverflow.com/questions/47890111
复制相似问题