我有三张桌子。
表A###(代码、值是组合主键)
Code Value
1 | b
1 | c
3 | c
表 B
Value
b
表 C
Value
c
我想从表 A 中写一个“代码”查询。
条件是“代码”应包含值“c”。
如果“代码”包含值“b”,则不应查询此代码。(即代码1有值b和值c,所以需要排除代码1)
但我无法进行该查询。
预期结果可能是“3”
我想使用 intersect 但 MySql 尚不包含此功能。所以我尝试了一些代码。我确定我的代码有问题,但我不知道如何修复它。
SELECT DISTINCT A.*
FROM A B C
WHERE A.Value IN
(SELECT Value FROM B)
AND A.Value NOT IN
(SELECT Value FROM C);
你能给我一些关于我的问题的提示吗?