Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL返回匹配项和非匹配项_Sql_Sql Server 2005_Join - Fatal编程技术网

SQL返回匹配项和非匹配项

SQL返回匹配项和非匹配项,sql,sql-server-2005,join,Sql,Sql Server 2005,Join,如何返回两个表中的所有行,包括匹配项?例如,如果我有一个account表和order表,它们都有一个account ID字段,那么我希望返回两个表中的匹配项以及非匹配项 我正在使用SQLServer2005 谢谢。我想您需要完全外部连接: SELECT * FROM Table1 T1 FULL OUTER JOIN Table2 T2 ON T1.AccountId = T2.AccountId 祝您好运。如果您想从两个表中同时获得匹配和不匹配的记录,请使用完全联接(或完全外部联接)。您

如何返回两个表中的所有行,包括匹配项?例如,如果我有一个account表和order表,它们都有一个account ID字段,那么我希望返回两个表中的匹配项以及非匹配项

我正在使用SQLServer2005


谢谢。

我想您需要
完全外部连接

SELECT *
FROM Table1 T1
  FULL OUTER JOIN Table2 T2 ON T1.AccountId = T2.AccountId

祝您好运。

如果您想从两个表中同时获得
匹配和不匹配的
记录,请使用
完全联接
(或完全外部联接)。您还可以使用
案例
查找匹配或不匹配的记录,如下所示


您能否添加具有所需结果的样本记录?我对你的说法感到困惑:我想返回两个表中的匹配项以及非匹配项谢谢你的回复,但SGEDES代码正是我要找的。嗨,谢谢,太好了。
select isnull(a.accountId,o.accountId) accId, AccName,ProName,
       case when AccName+ProName is null then 'No'
            else 'Yes' end as IsMatched
from Accs a FULL JOIN Orders o on a.accountId = o.accountId
order by IsMatched 

--Example results
AccId   AccName ProName IsMatched
1       X       (null)  No
10      (null)  Apple   No
2       Y       Orange  Yes
3       Z       Mango   Yes