hive QL 插入语法

摘要:
配置单元不支持逐个插入语句,也不支持更新操作。数据以加载的形式加载到已建立的表中。一旦导入,数据就无法修改。

1.insert 语法格式为:
基本的插入语法:
INSERT OVERWRITE TABLE tablename [PARTITON(partcol1=val1,partclo2=val2)]select_statement FROM from_statement
insert overwrite table test_insert select * from test_table;

对多个表进行插入操作:
FROM fromstatte
INSERT OVERWRITE TABLE tablename1 [PARTITON(partcol1=val1,partclo2=val2)]select_statement1
INSERT OVERWRITE TABLE tablename2 [PARTITON(partcol1=val1,partclo2=val2)]select_statement2

from test_table                     
insert overwrite table test_insert1
select key
insert overwrite table test_insert2
select value;

insert的时候,from子句即可以放在select 子句后面,也可以放在 insert子句前面。
hive不支持用insert语句一条一条的进行插入操作,也不支持update操作。数据是以load的方式加载到建立好的表中。数据一旦导入就不可以修改。

2.通过查询将数据保存到filesystem
INSERT OVERWRITE [LOCAL] DIRECTORY directory SELECT.... FROM .....

导入数据到本地目录:
insert overwrite local directory '/home/zhangxin/hive' select * from test_insert1;
产生的文件会覆盖指定目录中的其他文件,即将目录中已经存在的文件进行删除。

导出数据到HDFS中:
insert overwrite directory '/user/zhangxin/export_test' select value from test_table;

同一个查询结果可以同时插入到多个表或者多个目录中:
from test_insert1
insert overwrite local directory '/home/zhangxin/hive' select *
insert overwrite directory '/user/zhangxin/export_test' select value;

免责声明:文章转载自《hive QL 插入语法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇HttpClient4.5.2 连接池原理及注意事项Django cookie加密cryptography下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

深度自编码器(Deep Autoencoder)MATLAB解读

深度自编码器(Deep Autoencoder)MATLAB解读作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ 这篇文章主要讲解Hinton在2006年Science上提出的一篇文章“Reducing the dimensionality of data with neural networks”的主要思想与M...

mysql中时间比较的实现

MySql中时间比较的实现 unix_timestamp() unix_timestamp 函数可以接受一个参数,也可以不使用参数。 它的返回值是一个无符号的整数。不使用参数,它返回自1970年1月1日0时0分0秒到现在所经过的秒数, 如果 使用参数,参数的类型为时间类型或者时间类型的字符串表示,则是从1970-01-01 00:00:00到指定时间所经历...

kubernetes中pod的隔离策略

配置容器级别的安全控制 使用宿主机的网络模式 可以通过设置pod的spec的hostNetwork参数为true开启容器的“host”network模式 spec: hostNetwork: true containers: - name: name image: Enter contai...

antd Table 可伸缩列没有效果

把antd 中的Table可伸缩示例代码,下载到自己的代码中发现,鼠标放到表格的边框上,并没有出现可伸缩鼠标样式,最后的解决方法是在css样式中添加下面的样式,就解决问题了。 .react-resizable { position: relative; background-clip: padding-box; } .r...

数据库概述及基本操作

目录:数据库概述           SQL Sever的简介 数据库概述       数据库是相关的多维数据集及其所共享的对象的容器。这些对象包括数据源(表)、表、视图、规则、角色、存储过程、自定义函数等。如果多个多维数据集要共享这些对象,那么这些对象和多维数据集必须在同一个数据库中。简单来说,数据库就是管理数据的地方。  数据库的发展阶段:层次型、网...

docker API接口service update错误记录 error while removing network:…

一、问题 error while removing network:… 创建srvice的参数的时候,如果设置了network参数(接口POST:service/create) [{ "Image": "nginx", "ImageVersion": "1.17", "ServiceName": "test-chow", "Replicas...