[英]SQL Server: Join two tables and only get data of one table without identical rows
[英]sql table join get rows form one table only
我有以下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中的所有行,以使表B中某行的aId列存在A.aId。 我嘗試使用內部聯接,但是它使我行很多(在上面的示例中,它使我兩次進入行1
)。
該查詢似乎獲得了所需的結果:
SELECT DISTINCT(a.aid) FROM a INNER JOIN b ON a.aid = b.aid
您可以在B
的子查詢上過濾A
:
select * from A where aId in (select aId from B)
如果您要從A
獲得的唯一列是aID
,則您已經在B
擁有它:
select distinct aId from B
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.