使用其他条件计算表中的非唯一行

时间:2009-04-29 09:52:30

标签: sql mysql count

我有一个包含以下字段的表USERS

日期(日期时间) 电子邮件(VARCHAR) 供应商(INT) 事件(INT)

我正在查找同一封电子邮件中有多少条记录,这些记录是在特定月份与特定提供商发生的。

喜欢provider = x和month = y我想要

email              occurs
peter@peter.com    5
peter@peter.co.uk  2

我知道它应该是WHERE provider = x和MONTH(date)= y,但是我怎么能得到表中所有电子邮件的计数?有可能吗?

抱歉,如果这不是很清楚!谢谢你的帮助

1 个答案:

答案 0 :(得分:6)

这应该有效:

SELECT email, COUNT(*) AS occurs
WHERE provider = x AND YEARMONTH(date) = y
GROUP BY email
HAVING occurs > 1