2014-07-21 32 views
-1

我有兩個表usr和mat,在這裏我試圖寫一個查詢,其中mat假設給我的結果(UID!= DID)只有從墊表 即)(6, 'q', 'R'),(7, 'S', 'T' 僅使用聯接不存在,NOT存在於或不等於值)如何執行不等於使用兩個表中的連接功能

create table usr (uid int, uco varchar, umo varchar); 

insert into usr (uid,uco,umo) values (1,'k','l'), (2,'m','n'), (3,'o','p'), (6,'q','r'), (7,'s','t'); 

create table mat(did int, co varchar, mo varchar); 

insert into mat (did,co,mo) values (1,'a','f'), (2,'b','g'), (3,'c','h'), (4,'d','i'), (5,'e','j'); 
+1

爲什麼你不能使用'不存在'? – Siyual

+0

@Jonny''''和'!='在sql server中是有效的不等式運算符。 – Siyual

+0

爲什麼不能使用'NOT EXISTS'比'OUTER JOIN'更合適?閱讀:http://sqlperformance.com/2012/12/t-sql-queries/left-anti-semi-join –

回答

5

可能這就是你正在看的 -

select * from usr left outer join mat on usr.uid = mat.did where did is null 
相關問題