select cnt.loginid, grp.last_name as 'Group Name'
from contact cnt
right join grpmem list on cnt.contact_uuid = list.member
left join contact grp on grp.contact_uuid = list.group_id
join contact_acctyp cntacc on cnt.contact_uuid = cntacc.contact_uuid
where cntacc.c_acctyp_id in (select id from acctyp_v2 where sym like 'CDN%')
我为我们的系统编写了一个查询,其中列出了所有加拿大联系人及其所在群组。
现在,对于多个组中的人(他们的loginid多次出现),我需要确定他们所在的组数(返回计数)。但是,我不确定如何进行计数。
我希望我的输出格式如下:
| USER ID | # of Groups |
我似乎无法弄清楚如何将我写的内容变成那样。
答案 0 :(得分:2)
假设你要做的就是汇总你已经回来的信息,而不仔细查询你的查询,这是一个猜测:
select
cnt.loginid,
COUNT(*)
from contact cnt
right join grpmem list on cnt.contact_uuid = list.member
left join contact grp on grp.contact_uuid = list.group_id
join contact_acctyp cntacc on cnt.contact_uuid = cntacc.contact_uuid
where cntacc.c_acctyp_id in (select id from acctyp_v2 where sym like 'CDN%')
GROUP BY
cnt.loginid