0

有一个表叫TBL. 在具有 3 列的数据库中,即

  • 项目
  • 益处
  • 复杂

样本数据如下

Project Benefit   Complexity
Prj1    High        Easy
Prj2    High        Medium 
Prj3    Medium      Easy      
Prj4    Low         Easy         
Prj5    High        Medium 
Prj6    Low         Easy

我想要一个查询来输出结果如下

Benefit Complexity Projectcount 
High    Easy         1 
High    Medium       2  
Medium  Easy         1
Low     Easy         2

我想要一个 SQL 查询,以便计算每对利益/复杂性的项目数量并获得如上所示的输出。

4

2 回答 2

3

使用COUNT()聚合函数并按 和 对它们进行Benefit分组Complexity

SELECT  Benefit, Complexity, COUNT(*) ProjectCount
FROM    TBL
GROUP   BY Benefit, Complexity

其他来源

于 2013-01-29T13:07:45.907 回答
1
SELECT Benefit, Complexity, COUNT(1) AS NumberOfProjects
FROM TBL
GROUP BY  Benefit, Complexity

或者做

GROUP BY Complexity, Benefit

请注意, GROUP BY 将根据您给它的列的顺序进行聚合。因此,在第一个示例中,它将按收益对项目进行分组,并为每个收益组按复杂性拆分它。在第二个示例中,它按复杂性对其进行分组,然后按收益划分组。对于计数,您会得到相同的结果。

于 2013-01-29T13:08:20.977 回答