SQL查询 - 加入两个表

时间:2012-05-15 15:52:42

标签: mysql sql

我有两张表temp1& TEMP2。我在temp1中有5列(a,b,c,d,e),在temp2中有5列(a,b,c,d,e)

我想简单加入

a)temp1中的值,而不是temp2中的值 b)temp2中的值,而不是temp1中的值

3 个答案:

答案 0 :(得分:0)

如果要比较两个表上的所有记录,则需要在所有列上JOIN。如果您可以执行JOIN以外的操作,那么我建议您EXCEPT

 a):

SELECT *
FROM temp1
EXCEPT
SELECT *
FROM temp2

 b):

SELECT *
FROM temp2
EXCEPT
SELECT *
FROM temp1

答案 1 :(得分:0)

试试这个..它可能适合你:

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

答案 2 :(得分:0)

这取决于你的匹配标准。这假设A是您可以使用的唯一ID,如果没有为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