• 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

  • 相关阅读:
    linux网络编程之扫盲
    当lov变化时得到lov变化的值
    动态设置OAMessageChoiceBean值
    RSA host key for HOST has changed and you have requested strict checking
    64位整数的编译错误
    CSS让内容水平居中(固定宽度)
    如何计算亮度值
    adb新参数支持Android 2.2安装到SD卡上
    NSDateFormatter formatting
    Win7系统下Safari不能打开网页的解决方法
  • 原文地址:https://www.cnblogs.com/JackKing-defier/p/4517813.html
Copyright © 2020-2023  润新知