静态分区和动态分区
静态分区:自己传递一个参数作为分区参数
动态分区:需要设置动态分区
动态分区需要将分区字段作为最后select出来的字段,
并且在开头需要设置如下:
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nonstrict;
SET hive.exec.max.dynamic.partitions=2048;
SET hive.exec.max.dynamic.partitions.pernode=256;
注意:SET hive.exec.max.dynamic.partitions.pernode这一句设置允许的动态分区的数量,如果表比较大,分区数比较多,超过了这个设置,会报错(错误类似于返回code2,),所以可以在提供的网页上查看报错,若是该原因引起的,则可以将该设置增加
如下是个简单的例子: