小编rca*_*a86的帖子

数据库:如果任何行中的字段 X 具有值 Y,则排除“group by”组

我为此使用 MySQL。

(我正在删除不相关的连接以使这一点更清晰)

我正在尝试选择公司地址,按 company_id 分组,但如果整个用户在特定国家/地区有任何地址(ID 242),则排除整个用户

所以我尝试的第一个查询是:

SELECT c.company_id
FROM companies c
NATURAL JOIN addresses a
WHERE a.country_id != 15
GROUP BY c.company_id
Run Code Online (Sandbox Code Playgroud)

据我了解,这首先执行选择,然后排除country_id为15的行,然后返回剩余行的company_id,这些行是不同的,因为它们已分组。

因此,这会返回至少在 15 国以外拥有一个地址的任何公司。我需要排除在该国家/地区拥有地址的任何公司。

我怎样才能做到这一点?

mysql group-by notin

5
推荐指数
1
解决办法
4198
查看次数

标签 统计

group-by ×1

mysql ×1

notin ×1