Mysql 提取不同的成员名称及其计数
我需要提取不同的成员名称及其所产生的推荐数量。下面是我的桌子。我正在使用MySQLMysql 提取不同的成员名称及其计数,mysql,Mysql,我需要提取不同的成员名称及其所产生的推荐数量。下面是我的桌子。我正在使用MySQL Mmeber_ID----MemberName------ReferralTo--- --- 1 -------- Mike -------- Mitchell ------ --- 2 -------- Mike ---------Jack ---- --- 3 -------- Jill -------- Ricky ------ --- 4 -------- John -------
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
。好的,谢谢!成功了!