如何在MySQL中进行多个组计数

时间:2013-06-26 08:25:02

标签: mysql sql

我想使用群组查询显示2个字段的计数。

以下是表格和方案: 表

email            campaign
test@test.com    25
test@test.com    25
test@test.com    26

查询应该为我取这个。它应该告诉test@test.com重复3次,并且该电子邮件有2个独特的广告系列。

结果:test@test.com email_count = 3 campaign_count = 2

我尝试过很多小组查询,但没有人帮助过。

针对此问题的任何解决方案?

2 个答案:

答案 0 :(得分:2)

这应该非常简单,COUNT()允许DISTINCT关键字只计算唯一值。

SELECT email, 
       COUNT(*) email_count, 
       COUNT(DISTINCT campaign) Unique_count
FROM   tableName
GROUP  BY email

答案 1 :(得分:0)

试试这个

SELECT email,SUM(DISTINCT  campaign),COUNT(email)  FROM `table` GROUP BY email