在两个字段上使用 group,在 SQL 中使用 count

在 mysqldb 中有一个表,它有两列: group 和 subgroup。

 group, subGroup
grp-A, sub-A
grp-A, sub-A
grp-A, sub-B
grp-B, sub-A
grp-B, sub-B
grp-B, sub-B

我试图得到每个独特的情侣组/子组的记录数。

这就是我所期待的:

group, subGroup, count
grp-A, sub-A, 2
grp-A, sub-B, 1
grp-B, sub-A, 1
grp-B, sub-B, 2

在阅读了一些文章之后,我使用 group by,count ()尝试了几个 sql 查询,但是没有得到预期的结果。我该怎么补救?

220569 次浏览

I think you're looking for: SELECT a, b, COUNT(a) FROM tbl GROUP BY a, b

SELECT group,subGroup,COUNT(*) FROM tablename GROUP BY group,subgroup

You must group both columns, group and sub-group, then use the aggregate function COUNT().

SELECT
group, subgroup, COUNT(*)
FROM
groups
GROUP BY
group, subgroup