我有带桌子的桌子
id | groupName
然后是用户(在这里无关紧要)
id | userName
然后映射map-group-user
id | groupId | userId
第一步,我想知道每个组中有多少用户...
SELECT
g.groupName as name, count(DISTINCT m.groupId, m.userId) as totalCount
FROM group g
LEFT JOIN map-group-user m ON ( g.id = m.groupId)
GROUP BY g.id
此方法...我的结果是:
名称| totalCount
group1 | 34
group2 | 23
group3 | 11
现在,我想在相同的结果中添加另一列...我想知道是否将特定用户(假设userId = 1)添加到该特定组中(这样不仅可以计算有多少用户加入了该组,而且还可以知道我的用户属于哪个组)所以在同一查询中,我想检查map-group-user中是否有我的userId(1)每个组的条目
所以我想要这样的结果:
名称| totalCount | myUser
group1 | 34 | 1
group2 | 23 | 0
group3 | 11 | 1
所以myUser = 1,他已经在组中了...
我希望我的解释很清楚:)
感谢您的帮助
我有带有群组ID的表格| groupName然后是用户(在这里无关紧要)id | userName,然后映射map-group-user id | groupId | userId第一步,我想知道多少...
将此添加为您选择的列:
您可以在表和group_concat()之间使用联接作为用户名