1

我需要帮助进行 mysql 查询以根据每个子渠道上的买家数量获取每个主渠道上的买家数量

基本上我有两个表,即tbl_channeltbl_buyer如下:

在此处输入图像描述

条件:

  1. 我只是根据每个子渠道上的买家数量显示每个主渠道的买家数量(parentid = 0)
  2. channel_id (TBL_BUYER) 中具有相同buyer_id的每个买家都将计为一个买家

我想要的结果:

在此处输入图像描述

到目前为止,我只能查询显示子渠道的买家数量,如下所示:

SELECT count(aa.buyer_id) as Number_of_buyers FROM (SELECT b.buyer_id
FROM tbl_channel a 
RIGHT JOIN tbl_buyer b on (a.id=b.channel_id)
WHERE a.parentid_channel_id = 2 /* PARENT ID */
GROUP by b.buyer_id ORDER BY b.channel_id) aa

你能帮我做一个完整的查询以产生如上所示的结果吗?之前谢谢你:)

4

1 回答 1

3
SELECT  a.channel_id `Channel ID`,
        a.channel_title `Channel Title`,
        COUNT(DISTINCT c.buyer_id) `Number of Buyers`
FROM    tbl_Channel a
        INNER JOIN tbl_Channel b
            ON a.channel_ID = b.parent_channel_id
        INNER JOIN tbl_buyer c
            ON  b.channel_ID =  c.channel_ID
WHERE   a.parent_channel_id = 0
GROUP BY a.channel_id,
         a.channel_title
于 2012-11-12T05:48:25.790 回答