另一种方法是使用UNION
. 它更多地是一种检测许多表字段中差异的方法,但也可以在您的情况下工作。
在 SQL Server中比较两个表的最短、最快和最简单的方法:UNION!比较两个单独的表,但您可以分析单个表。
将 fieldsCOL1
等替换为COL2
您要比较的列。为了您的比较,我在WHERE
内部添加了一个子句,SELECT
以有效地将您的数据视为两个单独的表。
SELECT MIN(TableName) as TableName, ID, COL1, COL2, COL3 ...
FROM
(
SELECT 'Actual' as TableName, A.ID, A.COL1, A.COL2, A.COL3, ...
FROM Finance_Data A
WHERE VERS_NM = 'Actual'
UNION ALL
SELECT 'Outlook' as TableName, B.ID, B.COL1, B.COl2, B.COL3, ...
FROM Finance_Data B
WHERE VERS_NM = 'Current Outlook'
) T
GROUP BY ID, COL1, COL2, COL3 ...
HAVING COUNT(*) = 1
ORDER BY ID