• SQL语句组合查询 UNION


       1.使用UNION  

    UNION 可以涉及编写多条SELECT语句,首先看看单条语句

     

     第一条SELECT语句把Illinois,Indiana,Michigan等州的缩写传递给IN子句,检索出这些州的所有行.第二条SELECT利用简单的相等测试找出所有的'Fun4All'的cust_name

    接下来我们使用UNION来组合两条语句,如下:

    使用UNION关键字分隔两条SELECT语句,输出组合成一个查询结果集.

    以上处理结果跟下面只用WHERE语句来处理是一样的

    在这个简单的例子中,使用UNION 可能比使用WHERE子句更为复杂.但是对于较复杂的过滤条件,或者从多个表中检索数据的情形,使用UNION

    可能会使处理更简单.

    UNION的使用规则:

    1,必须包含两条或者两条以上的SELECT语句

    2.UNION中的每个查询必须包含相同的列,表达式或聚集函数

    3.列数据必须兼容:类型不必完全相同,但必须是DBMS可以隐含转换的类型

    4.SELECT 语句的输出用ORDER BY子句排序.在用UNION组合查询时,只能使用一条ORDER BY子句,它必须位于最后一条SELECT语句之后.

    另外注意:UNION使用的时候会自动过滤查询结果重复的行,如果想匹配所有的结果(显示重复的结果)可以使用 UNION ALL关键字,如下:

     可以看到使用UNION ALL查询的结果是显示重复行的.

    UNION还支持另外两种UNION  EXCEPT(有时称MINUS)可用来检索只在第一个表中存在而在第二个表中不存在的行.INTERSECT可用来检索两个表中都存在的行.

    实际上这些UNION用得比较少,因为相同的结果可利用联结得到.

  • 相关阅读:
    vi命令大全
    理解proc文件系统
    读目录
    取得系统资源信息
    qtempinc
    我实现的一个正则表达式代码
    oracle内置函数大全
    STL算法
    unix基础教程
    两日期间的天数
  • 原文地址:https://www.cnblogs.com/tinglele527/p/13205773.html
Copyright © 2020-2023  润新知