我有一个下表,我需要计算特定组处于特定门状态的实例,但不知道如何使用 Access SQL 进行操作。 我正在寻找一个 SQL 语句来实现这一点。 非常感谢您的帮助!
团体 | 任务 | 状态 |
---|---|---|
组1 | 任务1 | 1号门 |
组1 | 任务2 | 3号门 |
组1 | 任务3 | 3号门 |
组1 | 任务4 | 4号门 |
组1 | 任务5 | 5号门 |
组1 | 任务6 | 5号门 |
组1 | 任务7 | 5号门 |
组2 | 任务1 | 3号门 |
组2 | 任务2 | 3号门 |
组2 | 任务3 | 5号门 |
第3组 | 任务1 | 4号门 |
第3组 | 任务1 | 4号门 |
需要查询来显示这一点:
团体 | 1号门 | 2号门 | 3号门 | 4号门 | 5号门 |
---|---|---|---|---|---|
组1 | 1 | 0 | 2 | 1 | 3 |
组2 | 0 | 0 | 2 | 0 | 1 |
第3组 | 0 | 0 | 0 | 2 | 0 |
要在列标题中包含不存在的项目(例如此处的 Gate2),请在 PIVOT 子句中指定它们:
TRANSFORM NZ(COUNT([Task]),0) AS N
SELECT [Group]
FROM [table name]
GROUP BY [Group]
PIVOT [Status] IN ("Gate1","Gate2","Gate3","Gate4","Gate5")