我无法在1个查询中执行此操作,但是我可以在两个查询中执行此操作!
首先,创建一个联合查询,将表1中未出现在表2中的项目与表2中未出现在表1中的项目合并在一起。您的SQL应该看起来像:
SELECT T2.ID
FROM Table2 T2 LEFT JOIN Table1 T1 ON T2.[ID] = T1.[ID]
WHERE (((T1.ID) Is Null))
UNION SELECT T1.ID
FROM Table1 T1 LEFT JOIN Table2 T2 ON T1.[ID] = T2.[ID]
WHERE (((T2.ID) Is Null));
然后您的第二个查询基于此查询,并连接到表1和表2,显示查询中的所有记录以及这些表中ID匹配的所有记录。您的SQL应该看起来像这样:
SELECT Q3.ID, T1.holiday, T2.Holiday
FROM Table2 T2 RIGHT JOIN (Table1 T1 RIGHT JOIN Query3 Q3 ON T1.ID = Q3.ID) ON T2.ID = Q3.ID;
我假设在预期输出中显示的ID1是一个错误,因为它同时出现在两个表中。
问候,