select中, UNION 和 UNION ALL的使用方法

来源:百度文库 编辑:神马文学网 时间:2024/04/29 02:26:10
UNION

The UNION command is used to select related information from two tables, much like the JOIN command. However, when using the UNION command all selected columns need to be of the same data type.

Note:With UNION, only distinct values are selected.

 

SQL Statement 1 UNION SQL Statement 2

Employees_Norway:

E_ID E_Name 01 Hansen, Ola 02 Svendson, Tove 03 Svendson, Stephen 04 Pettersen, Kari

Employees_USA:

E_ID E_Name 01 Turner, Sally 02 Kent, Clark 03 Svendson, Stephen 04 Scott, Stephen
Using the UNION Command Example

List all different employee names in Norway and USA:

 

SELECT E_Name FROM Employees_Norway UNION SELECT E_Name FROM Employees_USA

Result

E_Name Hansen, Ola Svendson, Tove Svendson, Stephen Pettersen, Kari Turner, Sally Kent, Clark Scott, Stephen  

Note:This command cannot be used to list all employees in Norway and USA. In the example above we have two employees with equal names, and only one of them is listed. The UNION command only selects distinct values.

UNION ALL

The UNION ALL command is equal to the UNION command, except that UNION ALL selects all values.

 

SQL Statement 1 UNION ALL SQL Statement 2
Using the UNION ALL Command Example

List all employees in Norway and USA:

SELECT E_Name FROM Employees_Norway UNION ALL SELECT E_Name FROM Employees_USA

Result

E_Name Hansen, Ola Svendson, Tove Svendson, Stephen Pettersen, Kari Turner, Sally Kent, Clark Svendson, Stephen Scott, Stephen  

上面这个范例很好的描述了union的用法,对于union主要注意两点:

 

union(或union all)两边的结果集的列数必须一致,相同位置的列类型必须一致
例如 select t1.column1,t1.column2...t1.columnX from testtable1 t1
         union
         select t2.column1,t2.column2...t2.columnX from testtable2 t2
     
select 后所跟的column数必须一致
t1.column1 与 t2.column1的类型必须一致
但是t1.column1与 t2.column1的名字可以不一致
即t1.column1的名字可以是 aaa
t2.column1的名字可以是 ccc,
随便什么都可以

另外一个就是 union(或union all)
union:如果查询出来的结果中有重复记录,那么就去重 ,从范例中有明显表现,英文称之为"distinct"
union all:就显示所有的符合条件的记录,重复也保留
  

  由于数据库引擎BDE本身存在BUG,当软件所在硬盘的剩余空间碰巧是4G的倍数时,例如:4G、8G、12G...在保存或查询数据时,可能出来错误提示:Insufficient disk space。

 

  解决方案:关闭软件,人为删除或复制文件到软件所在硬盘,使其剩余空间避开4G的倍数。

 

  此方案适用于任何使用BDE数据库引擎的应用软件  (用友|金蝶|安易|新中大|金算盘|浪潮|神州数码|速达等)通用帐证查询打印软件

又作为会计师事务所数据采集、辅助审计软件

 

本软件适用对象:

  用友、金蝶、安易、新中大、金算盘、浪潮通软、速达用户及审计、会计师事务所。该软件作为第三方工具,可以连接财务软件的数据库,使得财务人员账证查询打印更简单直观,输出更美观,使审计、会计师事务所人员,不管被查账单位使用上述哪种财务软件,都能轻松查看或导出数据。连本机、连局域网内数据库服务器、连外地数据库服务器都可以。

什么人会下载本软件:
  1、认为国产财务软件的帐证查询打印功能,本可以做得更好,实际工作中,为此问题所累多时了,看到此软件后,会毫不犹豫地下载一个。
  2、所用财务软件,授权站点数不够者。只要安装有本软件的机器,能够通过网络访问数据库,就能在本软件下实现账证查询打印操作,与是否安装了财务软件客户端没有关系。
  3、审计机构人员。因为有了此软件,不管被审计单位使用哪种财务软件,以此软件的查账方法都是一样的,更为重要的是,可以带走本软件挂接财务软件后产生的数据备份文件,回到本单位慢慢研究。
  4、没有感觉所用财务软件有何不便,但还是想下载一个试试,看看此软件是否有可取之处者。
  5、财务软件服务人员。为了减少财务软件服务工作量,或者,为了解决高水平、严要求用户提出的难于解决的问题,特别是因为用户的要求不能满足,影响到收回软件款的情况下,会把此软件推荐给他的用户。

软件下载:

  软件版本:Version 8.7,Build 2010.12.12

  软件大小:约18兆

  下载地址:请根据所用财务软件类别下载适用的版本

       支持用友系列:

            http://www.ytxjy.info/xsjzb_uf.exe : 包括U8系列、T系列、财务通等
                  http://www.ytxjy.info/xsjzb_nc.exe : 用友NC系列 
                  http://www.ytxjy.info/xsjzb_ajiajia.exe : 用友政务A++系列 

           注:用友安易R9系列,归类到安易系列之下

       支持安易系列http://www.ytxjy.info/xsjzb_anyi.exe

       支持新中大系列:

                 http://www.ytxjy.info/xsjzb_xzd_ng.exe : 新中大NGPower、SE、GSoft系列
                 http://www.ytxjy.info/xsjzb_xzd_a3.exe : 新中大A3、I6、GE系列

       支持金蝶系列:

                 http://www.ytxjy.info/xsjzb_eas.exe : 金蝶EAS系列
                 http://www.ytxjy.info/xsjzb_k3.exe : 金蝶K3系列   
                 http://www.ytxjy.info/xsjzb_jd.exe : 除金蝶EAS、K3以外的金蝶KIS、金蝶2000 

       支持浪潮系列:

                 http://www.ytxjy.info/xsjzb_gs.exe :浪潮GS系列(浏览器运行的那种)
                 http://www.ytxjy.info/xsjzb_lc.exe :除浪潮GS系列以外

       支持神州数码系列:

                 http://www.ytxjy.info/xsjzb_szsm_yiyong.exe :神州数码ERP-易用财务
                 http://www.ytxjy.info/xsjzb_szsm_yifei.exe :神州数码ERP-易飞
                 http://www.ytxjy.info/xsjzb_szsm_yituo.exe :神州数码ERP-易拓

       支持金算盘系列:http://www.ytxjy.info/xsjzb_jsp.exe

       支持速达系列:http://www.ytxjy.info/xsjzb_sd.exe

       支持电力系统远光系列:http://www.ytxjy.info/xsjzb_yg.exe

       支持其它系列:http://www.ytxjy.info/xsjzb_qt.exe :包括:方正春元、四方志诚、来势科技、博科、久久、天扬慧博等

本软件运行模式:
  挂接到《用友、金蝶、安易、新中大、浪潮通软、速达》等财务软件的数据库,以只读方式,获取其数据,以财务软件不同的方式,实现帐证查询与打印,不影响所挂接财务软件的正常使用和数据安全性。

本软件之独创一,帐页全自动排版:
  三栏式帐页和多栏式帐页,分别只要六个参数(纸张规格、上下左右四个边界数、每页记帐笔数),所有帐页自动排版,根本不需要任何手动的格式调整,极其简单,还使得各帐页大小一致,便于装订。以多栏式帐页为例,在打印参数一定后,各帐户,不管有多少明细专栏,其帐页的大小是一样的,帐页内部各栏宽度,依据栏内容的大小或长度,自动安排列宽度,也就是说,帐页的大小、行高、列宽既不是调的,也不是缩放的,而是智能化自动算出来的。

本软件之独创二,多栏式帐页左右对开:
  对明细专栏较多的多栏式帐页,可选择左右对开,使得会计电算化后久违了的多栏帐格式又回来了。左右对开帐页,左右页合起来最为一个页面,分别在纸张的反面和下一张纸的正面。

本软件之独创三,普通打印机,就可实现帐页正反面打印:
  帐页打印参数中,提供正反面打印选项。双面打印,提供反面四个边界参数,适当调整后,可使得正反面帐页外框正好重合,装订起来,非常美观。连续打印时,首先批量打印正面(奇数页码),然后整体回送已输出纸张,批量打印反面(偶数页码)。

本软件之独创四,账本与账本目录:
  要装订到一本的账户,可在打印之前,先加入到账本中,从账本中查询打印正式账页,将更加简单和直观。同时,账本目录也随着产生。每套账,账本数不限,可三栏式多栏式混装。

本软件之独创五,脱离财务软件,实现帐证查询:
  此特点有两方面的作用:一、没有安装财务软件客户端的机器,只要安装本软件和财务软件所用数据库的客户端,就可查账。二、异地查账:只要机器里安装了本软件,利用异地本软件产生的挂接财务软件后产生的压缩备份文件,同样可以查账。

本软件之独创五,脱离财务软件,实现帐证查询:
  此特点有两方面的作用:一、没有安装财务软件客户端的机器,只要安装本软件和财务软件所用数据库的客户端,就可查账。二、异地查账:只要机器里安装了本软件,利用异地本软件产生的挂接财务软件后产生的压缩备份文件,同样可以查账。

本软件之独创六,跨年度查询、多账套汇总
  多年度、多账套间账户汇总查询、账项发生情况查询,账户多年度账页连续查询,账页到相关凭证、凭证到到相关账页查询。 


本软件的其他功能:
  自定义记帐凭证打印,支持空白纸打印和凭证套打,各种查询结果导出到Excel或复制粘贴到Excel。