Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 组递归1:M关系_Mysql - Fatal编程技术网

Mysql 组递归1:M关系

Mysql 组递归1:M关系,mysql,Mysql,我有一个递归1:M的表 每个客户可能都被以前的客户推荐过,现在我想对推荐过的客户进行分组,以便显示哪些客户推荐最多 我想要一个查询,它给出以下输出 我试过了 SELECT count(*) AS Count_of_referrals, referral_id FROM Customer GROUP BY referral_id 它给出了每个推荐id被提及的次数,但我无法找到一种方法将其与推荐他们的实际客户联系起来 感谢您对我的帮助……-) 好吧,你很接近了。您只需自行加入customer表

我有一个递归1:M的表

每个客户可能都被以前的客户推荐过,现在我想对推荐过的客户进行分组,以便显示哪些客户推荐最多

我想要一个查询,它给出以下输出

我试过了

SELECT count(*) AS Count_of_referrals, referral_id
FROM Customer
GROUP BY referral_id
它给出了每个推荐id被提及的次数,但我无法找到一种方法将其与推荐他们的实际客户联系起来


感谢您对我的帮助……-)

好吧,你很接近了。您只需自行加入
customer
表即可获得
reference\u id
name

SELECT c1.referral_id,
       c2.name,
       count(*) count_of_referrals
       FROM customer c1
            INNER JOIN customer c2
                       ON c2.customer_id = c1.referral_id
       GROUP BY c1.referral_id,
                c2.name;

请以文本形式发布您的表格和想要的结果。