使用SQL中的条件选择查询

时间:2013-05-14 09:32:29

标签: sql-server-2008

我有两个表Table-A和Table-B。

表-A包含

id           
1
2
3
4

表B包含

id    tno  data
1      1    regec
1      2    marsec
1      0    lorem
2      1    ipsum
2      0    doller
3      2    sit
3      0    amet
3      1    lipsum

在这些表中,id列是主键。我希望得到Table-A中的所有id,它在Table-B中没有相应的行,tno为'2'。

我的结果集如下所示

id
2
4

3 个答案:

答案 0 :(得分:5)

SELECT a.id
FROM tableA a
WHERE a.id NOT IN (
    SELECT b.id
    FROM tableB b
    WHERE b.tno = 2
)

SQLFIddle Demo

答案 1 :(得分:3)

SELECT id FROM tableA WHERE id NOT IN (SELECT id FROM tableB WHERE tno=2)

答案 2 :(得分:2)

SELECT id FROM [Table-A] where Id not in(SELECT id FROM [Table-B] WHERE tno=2)