zoukankan      html  css  js  c++  java
  • SQL中union运算操作的理解

      在SQL中,对于并运算,可以使用union关键字。

    例如:

    SELECT column_name(s) FROM table_name1
    UNION
    SELECT column_name(s) FROM table_name2

    在学习过程中,我产生了一个疑问,如果两个表的属性名称不同会出现什么情况呢?

    直接模拟了一个例子,构建代码如下:

    create table employee
    (empname     char(6),
    numchildren    int
    )
    
    create table dependent
    (depname     char(6),
    age    int
    )
    
    insert into employee values('haohao',2);
    insert into employee values('haohao',4);
    insert into employee values('fgsd',5);
    insert into employee values('hds',7);
    insert into employee values('hauuo',9);
    insert into employee values('hsao',4);
    insert into employee values('hhao',5);
    
    
    insert into dependent values('haohao',2);
    insert into dependent values('hdgso',2);
    insert into dependent values('hreo',2);
    insert into dependent values('hjh',2);
    insert into dependent values('haaao',2);

    这两个表的属性只是数据类型相同,测试效果如下:

    (select  empname,numchildren
    from employee)
    union
    (select depname,age
    from dependent
    )

    结果为:

    "hjh ";2
    "hhao ";5
    "haohao";2
    "hdgso ";2
    "haohao";4
    "fgsd ";5
    "hds ";7
    "hsao ";4
    "haaao ";2
    "hreo ";2
    "hauuo ";9

    可以看出,进行了合并,并且去除了重复。

    后来在W3School中的SQL模块看到了对于并运算的定义:

      “请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。”

    参考链接:http://www.w3school.com.cn/sql/sql_union.asp

    2015-05-20

    17:58:35

  • 相关阅读:
    adb monkey测试 命令
    大数据 入门
    代码设计模式 编写思想 架构
    汉化 android studio
    电脑时间显示秒 win10电脑显示农历
    Restful api介绍
    Map工具系列-03-代码生成BySQl工具使用说明
    win10 office2013激活工具
    win10 1607 密匙
    .net社区
  • 原文地址:https://www.cnblogs.com/JackKing-defier/p/4517813.html
Copyright © 2011-2022 走看看