2.6动态分区模式(让分区成为变量)
脚本模板
INSERT OVERWRITE TABLE tablename
PARTITION (partcol1[=var1], partcol2[=var2] ...) select_statement FROM from_statement
设置非严格模式
set hive.exec.dynamic.partition.mode=nonstric;
样例
有新表 student_outer,即新来的外部学生表,有若干学生数据,与student 表结构完全相同。
将 student_outer 表的多个分区数据,一次性插入到 student 表中。
数据准备
创建新表 student_outer 与之前的 student 结构完全一致
CREATE TABLE student_outer(
id string comment ' 学 号 ',
username string comment '姓名',
classid int comment '班级id',
classname string comment '班级名称') comment '学生信息主表'
partitioned by (come_date string comment '按入学年份分区')
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
STORED AS textfile;
装载数据
LOAD DATA LOCAL INPATH './student.txt'
OVERWRITE INTO TABLE s