Mysql 提取不同的成员名称及其计数

Mysql 提取不同的成员名称及其计数,mysql,Mysql,我需要提取不同的成员名称及其所产生的推荐数量。下面是我的桌子。我正在使用MySQL Mmeber_ID----MemberName------ReferralTo--- --- 1 -------- Mike -------- Mitchell ------ --- 2 -------- Mike ---------Jack ---- --- 3 -------- Jill -------- Ricky ------ --- 4 -------- John -------

我需要提取不同的成员名称及其所产生的推荐数量。下面是我的桌子。我正在使用MySQL

Mmeber_ID----MemberName------ReferralTo---
---  1  --------  Mike -------- Mitchell ------
---  2  --------  Mike ---------Jack ----
---  3  --------  Jill -------- Ricky ------
---  4  --------  John -------- Scott ------
我正在寻找的输出如下所示

MemberName------ReferralCount---
Mike -------- 2 ------
Jill -------- 1 ------
John -------- 1 ------
我尝试了以下方法,但似乎找不到解决方法。 任何帮助都将不胜感激

SELECT DISTINCT(MemberName), COUNT(MemberName)
AS member 
FROM responses
WHERE MemberName='Mike'
这只给了我迈克的结果和它的计数。如何获得整个成员列表的结果?
是否应该使用嵌套查询解决此问题?

您正在寻找分组。请尝试以下查询:

SELECT MemberName, Count(MemberName) as ReferralCount
FROM responses
GROUP BY MemberName;

要使用
COUNT
和类似的聚合函数,必须指明分组。在这种情况下,您需要每个MemberName的计数,因此必须添加以下行:
groupbymemberName

那么,问题是:

SELECT MemberName, COUNT(ReferralTo) as ReferralCount
FROM responses
GROUP BY MemberName

只需在查询的末尾添加一个
groupbymembername
。并删除
WHERE
条件。
Mmeber\u ID
是否应该是唯一的?您会有一个具有多个ID的成员,这似乎很奇怪。也许那应该是一个
推荐ID
。好的,谢谢!成功了!