0

表 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
)

有什么帮助吗?谢谢

4

4 回答 4

4
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
)
于 2013-07-19T15:15:41.653 回答
3
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
于 2013-07-19T15:16:17.133 回答
0
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 )
于 2013-07-19T15:51:27.873 回答
0

您也可以使用子查询来做到这一点,例如

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)
于 2013-07-19T15:24:01.410 回答