我尝试创建一个报告/查询,按年龄组分组。我当前的查询:
SELECT QUE_REP_GENERE_AGEGR.genere, QUE_REP_GENERE_AGEGR.age, Count(*) AS [count] FROM QUE_REP_GENERE_AGEGR
GROUP BY QUE_REP_GENERE_AGEGR.genere, QUE_REP_GENERE_AGEGR.age;
以下输出:(我知道Genre拼写错误)
现在想总结一下年龄组,如0-9; 10-19; 20-29; ...... (是的,我知道目前有一个年龄段的记录)
我曾尝试将分组功能用于报告,但并不成功,因为它没有总结类型,但显示如
...
Drama 1
Horror 2
Horror 5
Musical 1
...
我该如何分组呢?我需要另一个查询还是可以分组当前的查询? VBA是一种选择吗?
答案 0 :(得分:2)
我还没有完成MS-Access,但正如我评论的那样,你需要有一个"年龄组"的概念。 某处,并按此分组。
我强烈建议您在表格中定义这些组,否则您的查询必须定义它们。我觉得这样的事情会起作用(也许不是完全那样,但你明白了):
SELECT
genere [Genre]
,AgeGroup
,COUNT(*) [Count]
FROM (
SELECT
genere
,CASE WHEN age < 10 THEN '0-9'
WHEN age < 20 THEN '10-19'
WHEN age < 30 THEN '20-29'
END AgeGroup
FROM QUE_REP_GENERE_AGEGR
)
GROUP BY genere, AgeGroup
答案 1 :(得分:-1)
我找到了一个解决方案:我刚刚做的是向下舍入到最接近的10,以便18到10和45到40 ...... 这很有效,但仍然可以提供更好的解决方案。