为了完成本关任务,你需要掌握:1. 单表插入,2. 多表插入。
通过使用查询子句从其他表中获得查询结果,然后使用INSERT
命令把数据插入到Hive
新表中(Hive
会根据MapReduce
中的reduce
任务个数在HDFS
上的hive
新表目录下创建相应的数据文件000000_0
,若有多个reduce
任务,依次以000001_0
、000002_0
、…… 类推)。
该操作包括表单插入(一次性向一个hive
表插入数据)和多表插入(一次性向多个hive
表插入数据)。INSERT
命令可以操作在表和特定的分区上,如果属于分区表,必须指明所有分区列和其对应的分区列属性值。
单表插入
-
单表插入语法:
INSERT OVERWRITE TABLE tablename [PARTITION (partcol1=val1,partcol2=val2,……) [IF NOT EXISTS]] SELECT select_statement FROM from_statement;
该方法会 覆盖 表或分区中的数据(若对特定分区指定
IF NOT EXISTS
将不执行覆盖操作)。如查询
items_info
表,把查询结果放到items_info2
表中:
<