会员登录 - 用户注册 - 网站地图 Office中国(office-cn.net),专业Office论坛
当前位置:主页 > 技巧 > Access技巧 > 查询视图 > 正文

用查询设计器进行联合查询设计

时间:2009-07-31 09:01 来源:www.office-cn.net 作者:江羽 阅读:

一、联合查询的定义及相关基本概念                                     
      “联合查询”也有称为“联集查询”,联合查询是通过UNION运算符将两个或多个表、查询结果或SELECT语句组合在一起,而构成的查询。



       ACCESS 查询设计中“联合查询”对于初学者来说是相对较难的一种查询方式,因为 ACCESS 没有为我们提供建立联合查询的可视化向导,也不能直接用 access 查询设计器直观的进行编辑设计,而必须自行在查询的 SQL 视图中编写 SELECT 命令语句,对于 SQL 语句不是很熟悉或是初学者来说,有一定的难度。

SQL语法:
[TABLE] query1 UNION [ALL] [TABLE] query2 [UNION [ALL] [TABLE] queryn [ ... ]]

运算符:UNION

    1、UNION是联合查询的关键运算符,正是通过UNION将两个或多个查询结果、表或SELECT语句合并起来;
    2、在默认状态,UNION运算符会从头至尾检查合并后的结果,并去除重复记录,因此会减慢查询的运行速度;
   3、在UNION后面加上ALL,则不会遍历检查合并后的结果,从而提高查询的运行速度,但这样会直接返回所有记录,而不会剔除其中重复记录。

联合查询基本原则:

  •   被合并的对象(查询结果、表及SELECT语句)输出的字段数必须相同;

  •   字段类型无须相同的大小或数据类型,但数据类型须彼此相容;

  •   最后一个SELECT语句才可以拥有ORDER BY参数,对查询结果进行排序;

  •   各个查询结果或SELECT语句都可以使用GROUP BY与HAVING参数,但参数并不影响合并查询结果。

    二、用查询设计器进行联合查询设计                                     
           前面我们说过不能直接用查询设计器进行直观联合查询设计,但这并不是说不能用查询设计器来进行设计,我们可以用查询设计器先得到各查询结果的SELECT语句,再在SQL设计视图中加入运算符UNION,这样既可以检视各查询结果的正确性,同时也减少了我们书写SELECT语句的工作量。下面我们就结合实例学习如何用查询设计器进行联合查询的设计。

    2-1查询范例:
          “罗斯文”数据库中,业务往来单位的数据分为“客户”数据与“供应商”数据,为了方便管理,我们可以通过“联合查询”将两个表数据合并进行管理,建立“业务往来单位”查询,并按所在城市、公司进行排序;
    步骤一:获得客户查询结果,并将查询结果保存为“业务往来单位”查询


    步骤二:获得供应商查询结果SELECT语句

    步骤三:在SQL编辑视图中,组合两个查询的语句,完成联合查询

    实例样本(内含本文Word版):联合查询.rar

    (责任编辑:admin)

    顶一下
    (4)
    66.7%
    踩一下
    (2)
    33.3%
    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    评价: