mysql - 左连接,但如果连接表包含条目则排除

标签 mysql sql subquery left-join inner-join

我知道标题看起来微不足道,但问题比乍一看要深一些。

我有以下 3 个表结构:

user:  id, name
group: id, name
group_members: id, idUser, idGroup

有一个 id=1 的 super 管理员

我需要选择属于该组的所有用户。然而,棘手的部分是当他们订阅 super 管理员组和其他组时。我尝试了 LEFT JOIN 和 JOIN,但它们包含在本例中。如果他们订阅了 super 管理员组,我想从结果中排除它们,无论他们是否订阅了其他组。

最佳答案

SELECT * FROM user
WHERE id NOT IN
(SELECT idUser FROM group_members WHERE idGroup = 1)

关于mysql - 左连接,但如果连接表包含条目则排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19273955/

相关文章:

sql - 如何制作我们想要在 PostgreSQL 中查看的 txt/doc/pdf/html 文件

.net - Entity Framework 子查询

sql - 如果子查询导致SQLite情况

php - 从数据库获取记录时出现问题

php - 当用户结账以比较购物车数量与数据库数量时的最终检查仅返回一条记录,即使购物车中有多个商品

mysql - 在 MAMP/DB 中找不到 MAMP PRO MySQL 数据库文件夹

sql - 过滤具有相同 ID 的前一行具有特定值的数据

c# - Sql to Linq 难点——group by, having

php - 处理巨大的 mysql 查询 : Group BY sensitive

mysql - 使用子查询中的 GROUP BY 查询获取行数