Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-查询/SQL语句

精通MS-ACCESS SQL之基础篇(11)

时 间:2017-11-30 17:58:37
作 者:Big Young   ID:252  城市:襄阳
摘 要:    运用UNION操作符来合并结构相同的表或查询。
正 文:

第十一节 运用UNION操作符来合并结构相同的表或查询

在实际工作中,特别是在录入数据时,大量的数据需要多人录入,相同结构的记录被存放在不同的表中,录入完成后就需要合成为一个表。有时候需要在不同的数据库表之间提取相同结构的数据组成新记录集,这些工作都需要进行表或查询的合并,要完成这类工作就必须运用SQLUNION操作符创建合并查询,通过创建一个UNION(合并)查询来将两个或更多的独立查询或表合并在一起,生成一个记录集。

一、UNION(合并)查询的基本语法

    [TABLE] query1 UNION [ALL] [TABLE] query2 [UNION [ALL] [TABLE] queryn [ … ]]

合并操作有以下几部分:

1、由TABLE引导的已存储的表的名字;

2、“query1-n可以是一系列Select查询语句;

3、“query1-n”也可以是存储在数据库中的选择查询。

下面通过具体的实例来分别说明,我们还是以学生成绩管理为例:如有多个记录学生成绩的表,为了简化说明,我们只用三个结构一样表成绩1”成绩2”成绩3”三个表,它们的表结构相同,都具有考生号姓名、“语文数学英语综合等字段,现在需要将成绩1-3”三个表中的数据合并到一起,我们可以直接使用表的联合查询来完成。

二、多个表的UNION(合并)查询

这个操作是直接将表合并在一起,为了使大家能正确地认识合并操作的真实的情况,在操作前我们还是先浏览一下各表的内容,看下面的各图:

11-1:“成绩1”表中的记录

“成绩2”成绩3”表中的内容格式与成绩1”表类似,由于篇幅原因就不再列出了。下面我们来创建表的合并查询:

TABLE 成绩1 UNION TABLE 成绩2 UNION TABLE 成绩3;

运行查询后结果如图11-2所示:

11-2:运行多表合并查询的结果

由于记录较多,截图只能反映一部分,通过浏览和对比我们可以确认查询的结果确实是三个表中的全部内容,操作达到查询的目的。

三、多个查询结果的UNION(合并)操作

有时我们前不想要全部表是的所有数据记录,只想筛选出一部分来合并在一起,这时我们就可以并多个查询合并为一个来显示查看,还是用前面的三个表来说明,比如我们只想将三个表中的总分大于500分的考生的数据合并查看,我们可以用下面的SQL语句,如图11-3所示:

11-3:将多个查询合并在一起的UNION语句

执行此查询后其运行结果如图11-4所示:

11-4:多个查询合并在一起的效果

 UNION(合并)查询中的关键字ALL只是将所有的重复记录也显示出来,因为合并查询默认是排除重复记录的,这里就不再对此作过多的说明了。

四、将Select查询与TABLE查询进行UNION(合并)

这种操作其实就是前面两种形式的混合方式,并没有什么特别之处,如语句:

Select * FROM 成绩1 UNION TABLE 成绩2 UNION TABLE 成绩3;

如图11-5所示:

11-5:查询与表合并语句

运行后合并的结果与图11-2一致,这里就不再列出了。



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助