2012-05-15 129 views
-1

我有2個表temp1 & temp2。我在temp1中在TEMP2 5列(A,B,C,d,e)和5列(A,B,C,d,E)SQL查詢 - 加入兩個表

我想簡單的加入爲

一)值是是temp1而不是temp2 b)在temp2中而不在temp1中的值

+2

表中的任何鍵(主鍵/外鍵鍵)? – Shyju

+0

表中沒有主鍵/外鍵 – user130561

+0

http://www.w3schools.com/sql/sql_join.asp閱讀並找到您自己的解決方案。如果你仍然不能,再問一次,並提及你嘗試過的東西。你會得到更好的答覆。 – noMAD

回答

0

好取決於你的對手的標準是什麼。這假設A是一個可以使用的unqueid,如果不在on子句中添加更多的話。

Select 'In Temp1 but not temp2',temp1.* 
From Temp1 
Outer Join Temp2 On temp1.A = temp2.A Where temp2.A is null 
Union 
Select 'In Temp2 but not temp1',temp2.* 
From Temp2 
Outer Join Temp1 On temp2.A = temp1.A Where temp1.A is null 
+0

作品不錯..謝謝 – user130561

0

如果要比較兩個表上的所有記錄,則需要在所有列上都有JOIN。如果你能做到的東西,除了一個JOIN,那麼我建議EXCEPT

a): 

SELECT * 
FROM temp1 
EXCEPT 
SELECT * 
FROM temp2 

b): 

SELECT * 
FROM temp2 
EXCEPT 
SELECT * 
FROM temp1 
0

試試這個..它可以爲你工作:

select COLUMN1,COLUMN2,COLUMN3 from TABLE1 where COLUMN1 not in (select COLUMN1 from TABLE2);