• 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

  • 相关阅读:
    HDU1080(DP)
    hdu1059(多重背包优化)
    Codeforces Round #190 (Div. 2).D
    jQuery的安装
    JDBC-Statement,prepareStatement,CallableStatement的比较
    execute、executeQuery和executeUpdate之间的区别
    Word操作总结
    Excel 操作总结
    notepad 操作总结
    3.CSS使用基础(2)
  • 原文地址:https://www.cnblogs.com/yejibigdata/p/6376070.html
Copyright © 2020-2023  润新知