Sql server SQL Server-需要联接,但其中不等于
我正在使用SQL Server 2012 我知道如何做一个内部连接,它给出一个匹配的位置。 我还需要得到不匹配的记录 最好的方法是什么。我想我可以做一个左连接和一个内连接,然后得到 落在后面的人。想知道最好最干净的方法是什么Sql server SQL Server-需要联接,但其中不等于,sql-server,tsql,Sql Server,Tsql,我正在使用SQL Server 2012 我知道如何做一个内部连接,它给出一个匹配的位置。 我还需要得到不匹配的记录 最好的方法是什么。我想我可以做一个左连接和一个内连接,然后得到 落在后面的人。想知道最好最干净的方法是什么 如前所述,我已经在做一个内部连接,但还需要显示不匹配的记录 您可能正在寻找外部联接或外部排除联接 外接 SELECT * FROM tableA a FULL OUTER JOIN tableB b ON a.column = b.column 外部排除连接 S
如前所述,我已经在做一个内部连接,但还需要显示不匹配的记录 您可能正在寻找外部联接或外部排除联接 外接
SELECT *
FROM tableA a
FULL OUTER JOIN tableB b
ON a.column = b.column
外部排除连接
SELECT *
FROM tableA a
FULL OUTER JOIN tableB b
ON a.column = a.column
WHERE a.column IS NULL OR b.column IS NULL
此答案中的图形取自此表,非常有用。如果要从两个表中获取值,可以使用完全外部联接并获取一侧为空的记录:
select a.*, b.* from tableA a
full outer join tableB b on a.col = b.col
where a.col is null or b.col is null
显然,这样一来,一个表或另一个表的所有值都将为空。您是否有任何代码来演示您所尝试的内容?是否需要所有记录,包括匹配记录和非匹配记录。还是只需要不匹配的记录?缺少图像我获取“unlocnized关键字”(位置32处“OUTER”附近)