访问2016 - 比较两个表并使用查询返回匹配的记录
我的目标是创建一个查询,宏或任何可以执行下述任务的解决方案。访问2016 - 比较两个表并使用查询返回匹配的记录
- 可以说我有一个名为 “学生” 与12条这样的访问2016表:
- 然后,可以说我有一个名为 “matchme” 有4条这样的第二个表:
我需要找到一种方法来
=>首先,创建一个查询,返回“graduation_date”的结果等于表“学生”日期“1/31/2017”。
=>第二步,从第一步返回的结果创建一个查询,将“student”表中的“email”与“matchme”表中的“email”进行比较,并返回[匹配的]记录结果。
所以期望的结果将是:
因为电子邮件[email protected]和[email protected]两个表中存在。
如何创建这样的查询?
你可以从这里下载我访问文件:experiment.accdb
寻找到你的数据样本,你需要在两个表
select * from student
inner join matchme on student.graduation_date = matchme.graduation_date
and student.email = matchme.email
where student.graduation_date = '1/31/2017'
简单之间的日期和名称的加入:
select * from student
inner join matchme on student.email = matchme.email
where student.graduation_date = '1/31/2017'
让我知道如果我做错了什么。 1)点击“创建”2)点击“查询设计”按钮。 3)查看“显示表格”对话框4)单击关闭此对话框而不选择任何表格。 5)从视图6中选择“SQL视图”)粘贴你在这里编写的代码。 7)单击运行=>结果显示为“标准表达式中的数据类型不匹配”。任何想法我做错了什么? – ChrisP777
2个电子邮件字段上的数据类型听起来很不一样。如果您使用Access使用文本数据类型。检查学生和比赛表上的电子邮件字段,在设计视图中将两者都设置为文本数据类型 – jfatal
嗨,感谢您的回复。这两个表的ID都是自动编号。 student_number,first_name,last_name,email是两个表的短文本。 graduation_date是两个表的日期/时间..嗯,你可以真正下载我的文件,因为我在原始文章中添加链接,如果你好奇..谢谢你... – ChrisP777
我道歉。当我上传问题时,我犯了一个错误。我纠正了我的问题。这是“电子邮件”字段,必须匹配..你可以修改你的答案新问题? – ChrisP777
@ ChrisP777回答更新 – scaisEdge
谢谢你的回答!我粘贴了sql,它说“指定的文件'graduation_date'可能引用SQL语句的FROM子句中列出的多个表。”任何想法,如果我做错了什么?即使我将where子句更改为student.graduation_date ='1/31/2017',它也会返回“标准表达式中的数据类型不匹配”。 – ChrisP777