表 T3 的 A 和 B 与 T1 的 A 和 B 相同。基本上我需要做的是选择所有不在 T3 上的值。如果在 T3 上有一条 A、B 线,我不想显示它。
SELECT T1.A, T1.B, T1.C
FROM T1, T2
WHERE T1.X=T2.X
AND NOT EXISTS
(
SELECT T3.A, T3.B
FROM T3
)
有什么帮助吗?谢谢
SELECT T1.A, T1.B, T1.C
FROM T1 INNER JOIN T2 ON T1.X=T2.X
WHERE NOT EXISTS
(
SELECT 1 FROM T3
WHERE T3.A = T1.A AND T3.B = T1.B
)
select T1.A,T1.B,T1.C
from T1
inner join T2
on T1.X=T2.X
left join T3 on T1.A=T3.A and T1.B=T3.B
where T3.A is null
SELECT T1.A, T1.B, T1.C
FROM T1, T2
WHERE T1.X=T2.X
AND (T1.A, T1.B) NOT IN (SELECT T3.A, T3.B FROM T3 )
您也可以使用子查询来做到这一点,例如
SELECT T1.A, T1.B, T1.C
FROM T1, T2
WHERE T1.X=T2.X
AND T1.A NOT IN (SELECT T3.A FROM T3)
AND T2.B Not IN (SELECT T3.B FROM T3)