Hive----Hive 基本操作 ---DML

本文详细介绍了Hive的DML操作,包括Load数据、Insert插入、Select查询和Hive Join。重点讲解了Load操作的LOCAL关键字、OVERWRITE选项,Insert的语法结构,以及不同类型的JOIN查询。内容涵盖静态与动态分区、CTAS操作以及Hive对等值连接的支持和多表JOIN的注意事项。
摘要由CSDN通过智能技术生成

目录

2、DML 操作 

2.1、Load 装载数据 

2.2、Insert 插入数据 

语法结构: 

2.3、Insert 导出数据 

2.4、Select 查询数据 

2.5、Hive Join 查询 

语法结构: 

2、DML 操作 

2.1、Load 装载数据 

说明:

1、 LOAD 操作只是单纯的复制或者移动操作,将数据文件移动到 Hive 表对应的位置。 
 
2、 LOCAL 关键字 如果指定了 LOCAL, LOAD 命令会去查找本地文件系统中的 filepath。 如果没有指定 LOCAL 关键字,则根据 inpath 中的 uri 查找文件 注意:uri 是指 hdfs 上的路径,分简单模式和完整模式两种,例如: 简单模式:/user/hive/project/data1 完整模式:hdfs://namenode_host:9000/user/hive/project/data1 
 
3、 filepath: 相对路径,例如:project/data1  绝对路径,例如:/user/home/project/data1  包含模式的完整 URI,列如:hdfs://namenode_host:9000/user/home/project/data1 注意:inpath 子句中的文件路径下,不能再有文件夹。 
 
4、 overwrite 关键字 如果使用了 OVERWRITE 关键字,则目标表(或者分区)中的内容会被删除,然后再将 filepath 指向的文件/目录中的内容添加到表/分区中。  如果目标表(分区)已经有一个文件,并且文件名和 filepath 中的文件名冲突,那么现 有的文件会被新文件所替代。  

具体实例:

1、 加载本地相对路径数据 

2、 加载绝对路径数据 

3、 加载包含模式数据 

4、 overwrite 关键字使用 

2.2、Insert 插入数据 

语法结构: 

1、插入一条数据:

INSERT INTO TABLE table_name VALUES(XX,YY,ZZ); 
 
2、利用查询语句将结果导入新表:

INSERT OVERWRITE [INTO] TABLE table_name [PARTITION (partcol1=val1, partcol2=val2 ...)] select_statement1 FROM from_statement 
 
3、多重插入

FROM from_statement  

INSERT OVERWRITE TABLE table_name1 [PARTITION (partcol1=val1, partcol2=val2 ...)]  

select_statement1  

INSERT OVERWRITE TABLE table_name2 [PARTITION (partcol1=val1, partcol2=val2 ...)]

select_statement2] ... 


 4、分区插入

分区插入有两种,一种是静态分区,另一种是动态分区。如果混合使用静态分区和动态分区, 则静态分区必须出现在动态分区之前。现分别介绍这两种分区插入。  

静态分区: A)、创建静态分区表 B)、从查询结果中导入数据 C)、查看插入结果 

动态分区: 静态分区需要创建非常多的分区,那么用户就需要写非常多的 SQL!Hive 提供了一个动态分 区

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值