MySQL计数注册用户加入多个表

时间:2017-11-14 18:51:59

标签: mysql

创建此报告需要3个表。其中两个是包含数据的表,第三个表是前面步骤中用于收集报告数据的表。

表1.用户。

us_usid (int)
us_user (varchar) default empty string

表2. UserGroups

ug_usid (int) = users.us_usid
ug_group (varchar 6) = group id

表3.报告

re_group (varchar 6) = usergroups.ug_group
re_registered_count (int) = count of users with username

必须简化架构,但会显示所涉及的列。报告表中包含大约500个组ID。我需要计算其us_user<>的用户数''和usos us_usid在ug_usid中,由报告表中的ug_group ID分组。

例如,报告表将“533103”作为组ID。 UserGroups表有545个拥有该ug_group的用户。那些ug_usids对应于users表中的545个用户,其中373个用户具有us_user字符串的值。我需要在报告表中输入“373”号码。

如果弄清楚如何提取所有其他必要的数据,但找不到有效的方法(这些是1000到100000个成员的组合)方法,可以计算出一次登记的数量。

1 个答案:

答案 0 :(得分:0)

每个用户组的用户数,其中us_user

中有值
select ug.us_user, count(u.us_usid)
from UserGroups ug
inner join Usersu on ug.ug_usid = u.us_usid
where u.us_user IS NOT NULL