我有两张桌子Main
& Training
我完全加入Main.ID = Training.EMP_ID;
,但我的数据存在很大问题。
我必须使用FULL JOIN
来获取两个表中的所有数据;但是我有一些ID
&我的Emp_Names
表格中的Training
与我的Main
表格不同。
我需要比较两个列并返回两个表中的所有EMP_ID
并比较两个表中的EMP_Names
,以确保它们不会被记录多次!
我将不胜感激任何帮助!
我为我的完整JOIN创建了UNION,我得到了这个
ID DataA DataB 1
1 DataA1
2 DataA2
3 DataA3
4 DataA4
5 DataA5
6 DataA6 DataB6
7 DataA7 DataB7
8 DataA8 DataB8
9 DataA9 DataB9
10 DataA10 DataB10
11 DataB11
12 DataB12
13 DataB13
14 DataB14
15 DataB15
现在,我如何将这两列作为一列加入?并消除重复和重复放在一栏?
答案 0 :(得分:0)
我设置了两个表,MAIN和TRAINING,每个表都有一个ID字段和一个Emp_Names字段。
获取所有ID的Union查询(ID Master List)是
Select ID from Main
Union select ID from Training;
获得所需结果的第二个查询是
SELECT [ID Master list].ID,
Main.Emp_Names AS [Main name],
Training.Emp_Names AS [Training name],
IIf([main].[emp_names] Is Not Null,[main].[emp_names],[training].[emp_names]) AS Name
FROM ([ID Master list]
LEFT JOIN Main ON [ID Master list].ID = Main.ID)
LEFT JOIN Training ON [ID Master list].ID = Training.ID;
您可以修改iif语句中的逻辑,以更改当两个名称存在但您可能不同时执行的操作。
答案 1 :(得分:0)
听起来你正试图找到重复项,以便你可以摆脱它们。
Access具有查询向导,允许您在两个表之间查找重复项。
我建议尝试这样做以找到重复的而不是使用联盟......