给SQL问题起标题很难!如果您能想出更好的描述方法,请随意更改!
我的设置非常典型:3个表,users
,groups
和group_members
。
这是一个 SQL Fiddle: http://sqlfiddle.com/#!2/23712/1
我想知道哪些组属于哪些用户。
因此,我正在运行:
SELECT u.id, u.firstname, u.lastname,
GROUP_CONCAT(m.group_id) as groups
FROM group_members m, users u
WHERE m.user_id = u.id
GROUP BY id
ORDER BY u.lastname ASC
这很好,向我显示了用户的姓名和他们所在的组。
我的问题是,没有任何组的用户不会出现,因为WHERE子句当然不匹配它们。
如何返回没有任何组的用户?(在上面的SQL Fiddle中,我想要另一行Zack Jones,显示他是在组0、NULL或类似的东西中!)