我有一个组表:
- id -- 唯一 ID(主键)
- group -- 组名
我有一张用户表:
- 用户名——一个唯一的字符串(主键)
- group_id -- group.id 的外键链接
在这种情况下,用户只会在一个组中。那么,在 MySQL 中,我如何列出组及其成员用户数?
我尝试使用子选择和计数,但最终在所有组中显示相同的计数。
我有一个组表:
我有一张用户表:
在这种情况下,用户只会在一个组中。那么,在 MySQL 中,我如何列出组及其成员用户数?
我尝试使用子选择和计数,但最终在所有组中显示相同的计数。
SELECT group.id,COUNT(users.username) FROM groups
INNER JOIN users ON users.group_id=groups.id
GROUP BY groups.id
如果您想根据@Michael 的评论显示空组,您可以使用 LEFT JOIN
select g.group, count(*) as group_count
from groups g, users g
where g.id=u.group_id
group by g.groupname