设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1293|回复: 7
打印 上一主题 下一主题

[查询] 有两张表做不匹配查询,但是匹配条件不是单纯的一项,求指教

[复制链接]
跳转到指定楼层
1#
发表于 2012-5-21 10:19:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


具体见附件中的两张表,要将不匹配的筛选出来。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2012-5-21 12:18:38 | 只看该作者
不匹配的条件是什么?
3#
发表于 2012-5-21 12:26:45 | 只看该作者
  1. SELECT '1' AS 所属表,[1].* from [1] left join [2] on [1].姓名=[2].姓名 WHERE [2].姓名 IS NULL
  2. UNION SELECT '2',[2].* from [1] RIGHT join [2] on [1].姓名=[2].姓名 WHERE [1].姓名 IS NULL
复制代码
不匹配条件没有指名,楼主自己按需要自行修改,因为没有说明是查找1不匹配2还是2不匹配1还是2张表相互不匹配的项,所以,这里是返回的两张表相互不匹配项,其中,由插入常量构成的所属表字段,作用在于理解记录的来源,如不需要,可省略。
4#
发表于 2012-5-21 12:40:55 | 只看该作者
用UNION ALL代替UNION效率更高
5#
 楼主| 发表于 2012-5-21 16:53:16 | 只看该作者
tianslaike 发表于 2012-5-21 12:40
用UNION ALL代替UNION效率更高

表1:
姓名   日期    考勤记录
A        2012-1-2      0
B        2012-2-1      0

表2:
姓名   日期    考勤记录
A        2012-1-2      0
B        2012-2-1      0
C        2012-2-1      0
A        2012-2-1      0


希望的结果是
姓名   日期    考勤记录
C        2012-2-1      0
A        2012-2-1      0

就是讲表1和表2里面不重复的筛选出来,但是筛选条件不是唯一的,因为要根据姓名和日期两个条件
或者将两张表放到一起
如:
姓名   日期    考勤记录
A        2012-1-2      0
B        2012-2-1      0
A        2012-1-2      0
B        2012-2-1      0
C        2012-2-1      0
A        2012-2-1      0
找出其中不重复的项,查询向导只能找重复的项,求帮忙


   
6#
发表于 2012-5-21 17:12:36 | 只看该作者
  1. SELECT [2].姓名, [2].签到时间, [2].签退时间, [2].出勤时间, [2].日期, [2].星期
  2. FROM 1 RIGHT JOIN 2 ON ([1].星期 = [2].星期) AND ([1].日期 = [2].日期) AND ([1].出勤时间 = [2].出勤时间) AND ([1].姓名 = [2].姓名)
  3. WHERE ((([1].姓名) Is Null))
复制代码
7#
 楼主| 发表于 2012-5-21 17:33:09 | 只看该作者
Henry D. Sy 发表于 2012-5-21 17:12

SELECT [请假查询2].登记号码,[请假查询2].姓名, [请假查询2].签到时间, [请假查询2].签退时间, [请假查询2].出勤时间, [请假查询2].日期, [请假查询2].星期;

FROM 1 RIGHT JOIN 2 ON ([请假查询1].登记号码 = [请假查询2].登记号码) and([请假查询1].星期 = [请假查询2].星期) AND ([请假查询1].日期 = [请假查询2].日期) AND ([请假查询1].出勤时间 = [请假查询2].出勤时间) AND ([请假查询1].姓名 = [请假查询2].姓名)

WHERE ((([请假查询1].姓名) Is Null))

我按照实际表格改成这样为嘛就错了啊,语法错误。
8#
 楼主| 发表于 2012-5-22 09:27:13 | 只看该作者
Henry D. Sy 发表于 2012-5-21 17:12

可以了,谢谢版主,威武。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-10 22:32 , Processed in 0.082050 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表