时间:2023-11-12 11:27:41 下载该word文档
龙源期刊网http://www.qikan.com.cnAccess中不匹配项查询的三种方法
作者:马鹏卫
来源:《软件导刊》2013年第01期
摘要:查找两个表之间不匹配项数据是全国计算机等级考试二级Access上机考题中新增加的考点,属于考试大纲之外,相对于其它查询试题来讲较难。通过对试题的分析,从三个角度分别给出了解决方法。
关键词:等级考试;Access;匹配查询
中图分类号:TP301文献标识码:A文章编号:16727800(2013)0010023020引言
最近几次全国计算机等级考试二级Access上机考题中频频出现了一类查询,题目要求从两个表中找出不匹配项数据。比如“samp2数据库中有tStud和tScore两个表,创建一个查询,查找没有任何选课的学生的„学号‟和„姓名‟两个字段信息”,好多考生反映此类题貌似简单,但却无从下手。1题目分析
题目中给出了两个表:一个是表示学生基本信息的tStud表(包含学号、姓名、性别等字段,学号是主关键字段);另一个是表示学生各门课成绩的tScore表(包含学号、课程号和成绩3个字段,学号和课程号是组合关键字段)。
题目要求查找“没有任何选课的学生”,那么首要的问题就是如何判断学生是否选了课。tScore表中列出的是学号、课程号和成绩3个字段,并且每个字段值均非空,此表同时表明如果哪个学生选了课,那么在表中就有他的学号、课程号和成绩的相应信息。然而tStud表中包含的却是所有学生信息,因此,“没有任何选课的学生”的含义就是该学生在tScore表没有相应的记录,也就是说tStud表中的学号在tScore表中没有出现过,转换为查询中的条件就是tStud表中的学号不在tScore表的列表当中。2解决办法
通过前面的分析,对于此问题有以下3种解决方法:
(1)子查询。首先根据题目要求在设计网格中添加tStud表中的“学号”和“姓名”两个字段,由于“没有任何选课的学生”的含义是tStud表中的学号不在tScore表的列表当中,所以可设置“学号”的条件是“NotIn(SELECT学号FROMtScore)”,如图1所示。
龙源期刊网http://www.qikan.com.cn该子查询对应的SQL语句是:SELECTtStud.学号,tStud.姓名
FROMtStudWHEREtStud.学号NotIn(SELECT学号FROMtScore)
的国产手机各品牌的机型,非常适合于中国低端手机用户,而且软件使用简单方便,适用于一般的微型课程开发者。表1几款开发工具之比较12开发资源通用性12使用方便程度12是否需要编程12是否免费12是否支
持视频FlashLite12是12不方便12是12是12是LAM软件12是12方便12否12否12是亘天炫彩12是12方便12否12是12否参考文献:
[1]杨长秀,白凤翔.基于手机彩信的微型课程资源设计初探[J].教育技术,2010(6).[2]王珍珍,杨雪,傅健.基于FlashLite的移动学习资源开发研究[J].现代教育技术,2009(4).[3]董坤坤,戴心来,陈恳.基于LMA软件的移动学习资源设计[J].现代教育技术,2009(6).[4]陈向东.网络环境下的跨学科知识共享工具比较——信息行为的视角[J].