Mysql 每个组的用户数
我需要生成一个结果集,为所有用户组提供每个组中的用户数:Mysql 每个组的用户数,mysql,sql,join,group-by,Mysql,Sql,Join,Group By,我需要生成一个结果集,为所有用户组提供每个组中的用户数: insert into groupUser value(1,"administrator"); insert into groupUser value(2,"commercial"); insert into groupUser value(3,"development"); insert into user value(1,"jack", 3); insert into user value(2,"bill", 1); insert
insert into groupUser value(1,"administrator");
insert into groupUser value(2,"commercial");
insert into groupUser value(3,"development");
insert into user value(1,"jack", 3);
insert into user value(2,"bill", 1);
insert into user value(3,"mark", 3);
结果应该是:
administrator : 1
commercial : 0
development : 2
我找不到解决方案。因为您没有发布表架构
select g.Name, count(u.usergroupId) as members
from groupUser g left join user u
on u.usergroupId = g.id
group by g.Name
我想这会给你带来更好的结果
Select GroupUser,[Count]
from (Select groupid,count(*) 'Count' from user group by groupid) t
join Groupuser G
on G.id = t.id
您必须使用
LEFT JOIN
这两个表的字段名是什么。这些表的架构是什么?您应该从groupUser g LEFT JOIN user u更改JOIN中的表,因为存在没有用户的组。