需要查询两个字段的不同组合,以及出现不同组合的计数
Posted
技术标签:
【中文标题】需要查询两个字段的不同组合,以及出现不同组合的计数【英文标题】:Need to query distinct combination of two fields, along with a count that distinct combination occurs 【发布时间】:2016-03-08 13:08:16 【问题描述】:我需要的是对表的查询,该查询将返回 A 列和 B 列的不同组合,以及每个组合在表中出现的次数。这将全部按 A 列排序。
如果表格是:
A B .......
1 1
1 1
1 1
1 2
2 1
2 1
结果是:
A B count
1 1 3
1 2 1
2 1 2
任何帮助都会很棒。
【问题讨论】:
google 并了解group by
的工作原理
我注意到您的表没有主键 - 这可能会进一步证明有问题
【参考方案1】:
GROUP BY 是你的朋友:
select a,b,count(*) from test
group by a,b
order by a
SQLFiddle:http://sqlfiddle.com/#!9/062b0e/5
【讨论】:
【参考方案2】:像这样使用GROUP BY
SELECT
`A`,
`B`,
COUNT(*) AS `Count`
FROM
`table`
GROUP BY
`A`, `B`
ORDER BY
`A`
【讨论】:
以上是关于需要查询两个字段的不同组合,以及出现不同组合的计数的主要内容,如果未能解决你的问题,请参考以下文章