insert 语法格式为:

1. 基本的插入语法:

insert overwrite table tablename [partition(partcol1=val1,partclo2=val2)] select_statement;

insert into table tablename [partition(partcol1=val1,partclo2=val2)] select_statement;

eg:

insert overwrite table test_insert select * from test_table;
insert into table test_insert select * from test_table;

注:
overwrite重写,into追加。

2. 对多个表进行插入操作:

from source_table
insert overwrite table tablename1 [partition (partcol1=val1,partclo2=val2)] select_statement1
insert overwrite table tablename2 [partition (partcol1=val1,partclo2=val2)] select_statement2

eg:

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

注:hive不支持用insert语句一条一条的进行插入操作,也不支持update操作。数据是以load的方式加载到建立好的表中,数据一旦导入就不可以修改。

2.通过查询将数据保存到filesystem

insert overwrite [local] directory 'directory' select_statement;

eg:

(1)导入数据到本地目录:

insert overwrite local directory '/home/hadoop/data' select * from test_insert1;

产生的文件会覆盖指定目录中的其他文件,即将目录中已经存在的文件进行删除。

只能用overwrite,into错误!

(2)导出数据到HDFS中:

insert overwrite directory '/user/hive/warehouse/table' select value from test_table;
只能用overwrite,into错误!

(3)同一个查询结果可以同时插入到多个表或者多个目录中:

from source_table
insert overwrite local directory '/home/hadoop/data' select * 
insert overwrite directory '/user/hive/warehouse/table' select value;

3. 小结:

(1)insert命令主要用于将hive中的数据导出,导出的目的地可以是hdfs或本地filesysytem,导入什么数据在于书写的select语句。

(2)overwrite与into:

insert overwrite/into table 可以搭配;

insert overwrite directory 可以搭配;

最新文章

  1. 【腾讯Bugly干货分享】微信iOS SQLite源码优化实践
  2. go语言赋值
  3. Myeclipse 的hadoop环境搭建
  4. MemCache在win7上的可视化配置以及Nodejs/Net应用
  5. .NET MVC3中扩展一个HtmlHelper方法CheckBoxList
  6. kvm虚拟机安装
  7. 在linux中的virtualbox无法挂载usb设备的解决方法
  8. GDB多进程调试(转)
  9. 垂直居中小记 line-height table vertical-align:middle
  10. 详解EBS接口开发之供应商导入(补充)--错误信息处理
  11. 强制.net 程序以32位模式运行
  12. JS_正则表达式_获取指定字符之后指定字符之前的字符串
  13. Restful设计思想
  14. python-directory
  15. 效果监控js源码
  16. [转载]Oracle修改用户表所属表空间的步骤
  17. jquery .live() .delegate() .bind() .click()区别
  18. 【日志过滤】Nginx日志过滤 使用ngx_log_if不记录特定日志
  19. Appium元素定位(uiautomatorviewer)
  20. 【转】Vue v-bind与v-model的区别

热门文章

  1. 相克军_Oracle体系_随堂笔记004-shared pool
  2. 源码阅读系列:EventBus
  3. (九)WebGIS中的矢量查询(针对AGS和GeoServer)
  4. tomcat源码剖析系列
  5. 为你带来灵感的 20 个 HTML5/CSS3 模板
  6. WPF老矣,尚能饭否——且说说WPF今生未来(下):安心
  7. EF架构~EF异步改造之路~让DbContextRepository去实现异步接口
  8. C#中 字符串转换为计算公式,并计算结果
  9. 《数据结构与算法Python语言描述》习题第二章第三题(python版)
  10. Easticsearch通信方式_API