Hive——加载数据

向表中装载数据(Load)

load data local inpath '/opt/module/hive/student.txt' into table student(表名);

加local代表将linux本地文件加载到表中,不加则是将hdfs中的文件加载到表中(速度快,因为是对namenode的指向路径进行操作,不会对数据进行操作)

加overwrite代表将原表中的数据进行覆盖,不加则不会覆盖。

通过查询语句向表中插入数据(Insert)

student表的数据:
在这里插入图片描述
student1表的数据:
在这里插入图片描述
两个表中存有的数据是一样的,用insert语句将student1的数据传入到student表中。
在这里插入图片描述在这里插入图片描述

insert语句也能用student1的数据去覆盖student的数据
在这里插入图片描述
student表中的数据被覆盖:
在这里插入图片描述
多表插入模式:
需要提前创建一个表student2

create table student2(id string, name string) row format delimited fields terminated by '\t';

在这里插入图片描述

查询语句中创建表并加载数据(As Select)

根据查询结果创建表(查询的结果会添加到新创建的表中)

可在student3前加上if not exists
在这里插入图片描述

创建表时通过Location指定加载数据路径

HDFS中的文件没存在默认的元数据中,但是在创建表的时候想将文件的数据存入到创建的表中就可以使用Location方法创建一个外部表

在这里插入图片描述

红框为文件在HDFS中的路径。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值