如何连接两个表来选择MsSQL中有和没有条件的所有数据

时间:2016-05-09 09:56:26

标签: sql-server-2008 join left-join right-join

我有两张桌子。

Table_Sale

S_Date
S_Store
S_Item_ID
S_Qty

Table_Return

R_Date
R_Store
R_Item_ID
R_Qty

想象一下Table_Sale有1000行,Table_Return有250行。我想做这个cindition。(S_Date = R_Date和S_Store = R_Store和S_Item_ID = R_Item_ID)


认为有150行匹配该条件。然后是Table_Sale中的850行和Table_Return中的100行,它们与条件不匹配。现在我希望在一个表中有150 + 100 + 850个所有数据。我怎样才能加入先生。请任何人帮助我。

1 个答案:

答案 0 :(得分:1)

您应该使用FULL OUTER JOIN。像这样......

SELECT *
FROM Table_Sale a
FULL OUTER JOIN Table_Return b ON a.S_Date = b.R_Date 
                              and a.S_Store = b.R_Store
                              and a.S_Item_ID = b.R_Item_ID