给定一个表,看起来像这样:如何获取每个项目不同子项目的计数?
DATE USER TYPE DEPT
3/1/13 Team1 Add Finance
3/1/13 Team1 Add Collections
3/2/13 Team1 Delete Finance
3/2/13 Team1 Delete Finance
3/2/13 Team1 Delete Finance
3/3/13 Team1 Delete Collections
3/3/13 Team1 Change Finance
3/3/13 Team1 Change Finance
3/4/13 Team1 Add Finance
3/5/13 Team1 Delete Collections
我怎样才能得到输出这样?
TYPE DEPT COUNT
Add Collections 1
Add Finance 2
Change Collections 0 (note: this line could be omitted if COUNT = 0)
Change Finance 2
Delete Collections 2
Delete Finance 3
我需要指定USER = Team1和日期范围。我见到目前为止以下,但它不工作:
SELECT user, type, Count(*) AS Total
FROM table1
GROUP BY user, type
HAVING (((user)="Team1"));
这给了我:
USER TYPE Total
Team1 Add 3
Team1 Change 2
Team1 Delete 5
但不通过DEPT打破它,我不知道如何指定日期范围。
一如既往,谢谢!
编辑:我想我想通了:
SELECT User, Type, Dept, Count(*) AS Total
FROM Table1
WHERE (((Date) Between #3/1/2013# And #3/5/2013#))
GROUP BY User, Type, Dept
HAVING (((User)="Team1"));
如果不是访问,我会说'选择类型,部门,COUNT(*)计数 FROM表1 WHERE 用户= 'TEAM1' 和日之间 '2012-01-01' AND '2013-12-31' GROUP BY type,dept;',但访问总是有一些惊喜存储:) –
@JoachimIsaksson我在Google搜索过程中发现了类似的东西,但是Access不喜欢使用COUNT这种方式。给出语法错误。 –