SELECT users.mail, users.name FROM members
LEFT JOIN users ON (users.uid = members.uid) WHERE members.group = 27
AND members.uid NOT IN (SELECT subgroup_members.uid FROM subgroup_members
LEFT JOIN subgroups ON (subgroups.id = subgroup_members.sid)
LEFT JOIN users on (users.uid = subgroup_members.uid) WHERE subgroups.oid = 27 AND subgroup_members.leader = 1)
此查询返回不是子组的领导者的组的所有成员。
成员表显示哪个userid(uid)
属于group(group)
,subgroup_members
表显示哪些用户属于subgroup(sid)
。领导在subgroup_members表的leader列中用'1'表示。
我正在试图找出如何返回一个不是唯一子组的领导者的所有成员,而且我现在很难过。
因此,我需要确定它是否是唯一的值
而不是subgroup_members.leader = 1
答案 0 :(得分:1)
使用GROUP BY
来隔离唯一索引。
文档:https://dev.mysql.com/doc/refman/5.5/en/group-by-modifiers.html