以表table_tangli(分区step)为例,【假设当前只有step='1'的分区】#Hive
执行修改表结构脚本:alter table table_tangli add columns(c3 string), 并insert 插数据,但是发现step='1' 对应新增字段数据值为空, step新分区数据正常。
原因:使用alter table语句更新结构时,由于默认更新现有表结构,对原有分区无改动,导致原有分区改变数据时,新字段为null
即,现有表结构和历史分区都需要进行表结构调整,需再执行alter table table_tangli partition(step='1') add columns(c3 string);