进行查询以显示不匹配的数据

Make a query to display unmatched data

我在进行显示两个表之间不匹配数据的查询时遇到困难。 这些表格是:

Employee data                   Salary data
ID  Holidays               ID      Holiday
1    10                    0       10
2     8                    1        5
3     5                    2        8
4     7                    3        5
5     8                    7        6
6     5                    8        9
7     6                    9        2
8     9                    10       3

主键是两个表的 ID。

我希望我的查询结果包含两个表中不匹配的所有值。 我想要的输出类型是这样的:

ID    Holiday
0       10
1       10
1        5
4        7 
5        8
6        5
9        2
10       3

我尝试使用不匹配的查询向导,但它只比较 ID,而不是 Holiday 列。 请帮助我!

您可以使用两个存在查询的联合:​​

SELECT ID, Holiday FROM Employee as e
WHERE NOT EXISTS (SELECT 1 FROM Salary as s WHERE s.ID = e.ID AND s.Holiday = e.Holiday)
UNION ALL
SELECT ID, Holiday FROM Salary as s
WHERE NOT EXISTS (SELECT 1 FROM Employee as e WHERE e.ID = s.ID AND e.Holiday = s.Holiday);