求用access进行多表数据匹配的步骤,急!!!

现有两张表,第一张表里面包含有code(代码),Ename(英文名)等数据,第二张表里有code,Ename,Cname(中文名)等数据,现在要求根据第二张表,给第一张表配上相应的中文名,看能匹配上的情况如何,并且导出一张比对后结果的表出来。
我只要具体步骤,不要给我提供什么教程的链接,谢谢,不甚感激!!!
您好!您的答案我看到了,意思是对的,不过我不是要程序哦,我想要具体在access里面的操作步骤,另外表一不管有没有在表二里匹配到中文名,匹配到的和没有匹配上的结果都要出来的,主要就是看能匹配多少,也就是说表一的数据量不能少的。关键是操作流程,请能否帮的上忙?谢谢!

第1个回答  2010-11-16
实现步骤就是建立适当的查询,很多功能都是在各种查询的基础上实现的,按你的要求可以如下:

假设有以下两个表:

表1
ID code Ename
1 1234 AAC
2 1344 AAC
3 1235 ABC
4 1333 CCC
5 343A AFA

表2
ID code Ename Cname
1 1344 AAC 中国
2 343A AFA 英国
3 232F FFF 法国

建立查询(查询2):
SELECT 表1.ID, 表1.code, 表1.Ename, 表2.ID, 表2.code, 表2.Ename, 表2.Cname
FROM 表2 RIGHT JOIN 表1 ON (表2.Ename = 表1.Ename) AND (表2.code = 表1.code);

运行结果:
表1.ID 表1.code 表1.Ename 表2.ID 表2.code 表2.Ename Cname
1 1234 AAC
2 1344 AAC 1 1344 AAC 中国
3 1235 ABC
4 1333 CCC
5 343A AFA 2 343A AFA 英国

报表或窗口输出都可以在这个查询的基础上简单地实现出来.如果要进一步统计资料也是以这个查询的基础上进行,例如要统计表一有的表二没有的资料,可以写查询:
SELECT 查询2.*
FROM 查询2
WHERE IsNull[查询2].[表2].[ID]<>False;

运行结果:
表1.ID 表1.code 表1.Ename 表2.ID 表2.code 表2.Ename Cname
1 1234 AAC
3 1235 ABC
4 1333 CCC本回答被提问者采纳
第2个回答  2018-02-01

我用的是ACCESS2007版,操作步骤如下:

1、建立表1和表2(如有EXCEL表,可在顶端菜单栏的”外部数据“中选"EXCEL“导入)

2、点”创建“,选”查询设计“,建立查询

3、在弹出的”显示表“框的”表“这个标签中,双击”表1“、”表2“添加

4、单击“表1.ename”然后拖到”表2.ename”上,并双击或右击选”联接属性“,按你的要求选择”2:包括‘表1’中所有记录和‘表2’中联接字段相等的那些记录

5、你可以在“字段”中自由选择需要显示的字段,如果要加限制条件,比如只显示“表1.ename=aac”,你要在”字段“中单独添加一个”表1.ename”,在下面的“条件”中输入”aac”;如果要同时显示“表1.ename=aac”和”表1.ename=ccc”的,除了上面这一步,再在下面的”或”输入”ccc”(这个“或”是为在一个字段中加几个限制条件的)。由于ename是文本,你也可以在条件中输入”like “a*”,来显示所有ename是以a字母开头的记录。

同样,你还可以叠加其他条件,比如再设置一个color=红的条件。

6、因为你前面在“字段”中选择了“表1.*”(表1所有字段),所以这个“表1.ename”是重复显示的,你可以去掉“显示”的复选框(“条件”上面一行),这个限制条件仍然起作用。

7、点击界面左上的“运行”(“设计”标签页中),你会看到最终的结果。(想要把表中的字段名换成你想要的名字,需要在“查询设计”中在“字段”前面加上“你想要的字段名字:”)

相似回答