sql表连接只能从一个表中获取行

时间:2017-09-07 15:06:23

标签: sql sqlite

我有以下A,B,列c1,c2

A
--
aId

B
--
bId, aId

让我们说A有下面的行

aid
1
3
4

和B有以下行

bId, aId
6, 1
5, 4
10, 1

我需要以下

的输出
id
1
4

问题也就是说,我试图获取表A中的所有行,以便A.aId存在于表B中针对列aId的某些行。我尝试过使用内连接,但它给了我很多行(在上面的例子中,它会给我两行1

2 个答案:

答案 0 :(得分:2)

此查询似乎可以获得您想要的结果:

SELECT DISTINCT(a.aid) FROM a INNER JOIN b ON a.aid = b.aid

答案 1 :(得分:1)

您可以在AB上的子查询中过滤A

B

如果select * from A where aId in (select aId from B) 中唯一的列是A,那么您已在aID中拥有该列:

B