Hive中insert into 和 insert overwrite的区别

经过一段时间,发现已经分不清insert into 和 insert overwrite 的主要区别点是什么了,故此总结一下,以便随时查阅,也希望对大家有所帮助,与大家共同进步!

共同点: insert into 和 insert overwrite 都是往表中插入数据的

区别1: 

  • insert into :其实是将数据追加到表的末尾,注意 可不是覆盖 是追加
  • insert overwrite : 其实是将重写表中的内容,即将原来的hive表中的数据删除掉,在进行插入数据操作

提示: 如果hive 表示分区表的话,insert overwrite 操作只是会重写当前分区的数据,是不会重写其他分区的数据的。

这一点我觉得尤为重要,是一个坑点

区别2:

  • hive > insert into [表名] stu select * from student;  

注:将select * from student 的查询机结果追加到stu表内容的后面,而且table关键字是可以省略的

  • hive > insert overwrite table stu select * from student;

注:将select * from student 的查询机结果覆盖掉stu表之前的数据,而且table关键字是不可省略的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值