首页 > 数据库 >Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件

时间:2023-01-24 14:10:38浏览次数:33  
标签:join Hadoop Hive 查询 Apache 连接 left


Hadoop离线是大数据生态圈的核心与基石,是整个大数据开发的入门。本次分享内容让初学者能高效、快捷掌握Hadoop必备知识,大大缩短Hadoop离线阶段学习时间,下面一起开始今天的学习!


一、Hive Join语法规则

背景

根据数据库的三范式设计要求和日常工作习惯来说,  我们通常不会设计一张大表把所有类型的数据都放在一起,而是不同类型的数据设计不同的表存储。

比如在设计一个订单数据表的时候,可以将客户编号作为一个外键和订单表建立相应的关系。而不可以在订单表中添加关于客户其它信息(比如姓名、所属公司等)的字段。

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_数据库

在这种情况下,有时需要基于多张表查询才能得到最终完整的结果; 

join语法的出现是用于根据两个或多个表中的列之间的关系,从这些表中共同组合查询数据。

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_Hive_02

二、Hive 主要的Join方式

Hive join语法规则

在Hive中,使用最多,最重要的两种join分别是:inner join  (内连接)  、  left join  (左连接)

table_reference:是join查询中使用的表名。

table_factor:与table_reference相同,是联接查询中使用的表名。
join_condition: join查询关联的条件,如果在两个以上的表上需要连接,  则使用AND关键字。

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_hive_03

  •  join查询数据环境准备

    为了更好的练习、学习掌握Hive中的join语法,  下面我们去创建3张表并且加载数据到表中。

  • 表1:  employee 员工表;
  • 表2:  employee_address 员工住址信息表;
  • 表3:  employee_connection 员工联系方式表;

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_hive_04

 

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_Hive_05

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_Hive_06

 inner join 内连接

内连接是最常见的一种连接,它也被称为普通连接,其中inner可以省略:  inner join == join; 

只有进行连接的两个表中都存在与连接条件相匹配的数据才会被留下来。

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_sql_07

 

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_sql_08

left join 左连接

left join中文叫做是左外连接(Left Outer Join)或者左连接,其中outer可以省略,  left outer join是早期的写法。    

left join的核心就在于left左。左指的是join关键字左边的表,  简称左表。

通俗解释: join时以左表的全部数据为准,  右边与之关联;左表数据全部返回,右表关联上的显示返回,  关联不上的显示null返回。

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_hive_09

Hive SQL Join关联查询Apache Hadoop概述Hadoop YARN架构、组件及其交互流程Apache Hive入门:模拟实现Hive功能、Hive架构、 组件_sql_10

标签:join,Hadoop,Hive,查询,Apache,连接,left
From: https://blog.51cto.com/u_8238263/6022254

相关文章

  • 大数据必知必会:Hadoop(4)高可用集群安装
    (大数据必知必会:Hadoop(4)高可用集群安装)安装前准备高可用集群环境下,至少需要3台服务器,这里准备5台。IP地址主机名称角色10.0.0.5node1NameNode10.0.0.6n......
  • Hive SQL题库-高级
    第1题同时在线人数问题1.1题目需求现有各直播间的用户访问记录表(live_events)如下,表中每行数据表达的信息为,一个用户何时进入了一个直播间,又在何时离开了该直播间。......
  • Apache IoTDB C# SDK Apache-IoTDB-Client-CSharp
    最近今天写了IoTDB的三篇相关文章,完成了安装部署和客户端连接:WindowsServer上部署IoTDB集群DBeaver连接IoTDBDriver将IoTDB注册为Windows服务TsFile是IoTDB的底层数......
  • Hive SQL题库-中级
    第一章环境准备1.1用户信息表1)表结构user_id(用户id)gender(性别)birthday(生日)101男1990-01-01102女1991-02-01103女1992-03-01104男19......
  • 大数据必知必会:Hadoop(1)单机环境安装
    (大数据必知必会:Hadoop(1)单机环境安装)安装前准备操作系统准备本次安装采用的操作系统是Ubuntu20.04。更新一下软件包列表。sudoapt-getupdate安装Java8+使用命......
  • Doris报Could not initialize class org.apache.doris.catalog.PrimitiveType
    ERROR1105(HY000):errCode=2,detailMessage=NoClassDefFoundError:Couldnotinitializeclassorg.apache.doris.catalog.PrimitiveType这个报错是jar包的问题1.......
  • 单机版hadoop搭建过程记录
    1、添加hadoop1用户组[root@localhost~]#groupaddhadoop12、添加hadoop1用户,并设置密码[root@localhost~]#useradd-ghadoop1hadoop1[root@localhost~]#passw......
  • Apache RocketMQ 5.0 笔记
    RocketMQ5.0:云原生“消息、事件、流”实时数据处理平台,覆盖云边端一体化数据处理场景。核心特性云原生:生与云,长与云,无限弹性扩缩,K8s友好高吞吐:万亿级吞吐保证,同时满足......
  • 大数据相关认识,大数据、物联网和云计算之间的关系,hadoop简介
    大数据相关认识说道大数据,谷咕咕就很烦了,因为大学期间,做过爬虫,数据抓取,安装过Hadoop和hive,但是都不知道干嘛的,起码爬虫还知道,通过正则表达式将网页中的有效信息爬取下来。但......
  • 记一次hive之间ip不通导数据
    1、首先在目标库建立相同的表,加载数据路径要符合环境目录。2、将生产数据下载到本地hadoopdfs-get/user/hive/warehouse/dw.db/表名/d_1=20230112/tmp/hivedata3、......