zoukankan      html  css  js  c++  java
  • 13.JOIN

    SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据

    CREATE TABLE IF NOT EXISTS zz0 (
    number INT(11));

    CREATE TABLE IF NOT EXISTS zz1 (
    number INT(11));

    INSERT INTO zz0 (number) VALUES(111111);
    INSERT INTO zz0 (number) VALUES(222222);
    INSERT INTO zz0 (number) VALUES(888888);

    INSERT INTO zz1 (number) VALUES(333333);
    INSERT INTO zz1 (number) VALUES(444444);
    INSERT INTO zz1 (number) VALUES(555555);

    hive> select * from zz0;
    111111
    222222
    888888

    hive> select * from zz1;
    111111
    333333
    444444
    888888

    1.在表中存在至少一个匹配时,INNER JOIN 关键字返回行。注释:INNER JOIN 与 JOIN 是相同的。
    hive> select * from zz0 join zz1 on zz0.number = zz1.number;
    111111  111111
    888888  888888

    INNER JOIN 关键字在表中存在至少一个匹配时返回行。如果 "zz1" 中的行在 "zz0" 中没有匹配,就不会列出这些行。

    2.LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。注释:在某些数据库中, LEFT JOIN 称为 LEFT OUTER JOIN。

    hive> select * from zz0 left outer join zz1 on zz0.number = zz1.number;
    111111  111111
    222222  NULL
    888888  888888

    3.RIGHT JOIN 关键字会右表 (table_name2) 那里返回所有的行,即使在左表 (table_name1) 中没有匹配的行。注释:在某些数据库中, RIGHT JOIN 称为 RIGHT OUTER JOIN。
    hive> select * from zz0 right outer join zz1 on zz0.number = zz1.number;
    NULL
    111111  111111
    NULL    333333
    NULL    444444
    888888  888888

    4.FULL JOIN 关键字 只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。
    hive> select * from zz0 full outer join zz1 on zz0.uid = zz1.uid;
    NULL
    111111  111111
    222222  NULL
    NULL    333333
    NULL    444444
    888888  888888

    FULL JOIN 关键字会从左表 (zz0) 和右表 (zz1) 那里返回所有的行。如果 "zz0" 中的行在表 "zz1" 中没有匹配,或者如果 "zz1" 中的行在表 "zz0" 中没有匹配,这些行同样会列出。


    hive> select * from zz0 left semi join zz1 on zz0.uid = zz1.uid;
    111111  111111
    888888  888888

  • 相关阅读:
    java基础>包、访问权限、命名规范 小强斋
    java基础>Static 和 Final 关键字 小强斋
    java基础>对象的创建过程(初始化、析构、清理) 小强斋
    iPhone 上少用三元操作符 ? :
    QQ群人满了
    面向对象C语言(ObjectiveC)编程简介
    java Integer.ValueOf(int)和new Integer(int)性能比较
    关于在iPhone上合并2个应用程序(App)成一个
    java Preferences持久化使用示例
    Memcache VS MySQL Query Cache.
  • 原文地址:https://www.cnblogs.com/yejibigdata/p/6376070.html
Copyright © 2011-2022 走看看