我在Hive中有一个空的分区表,我正在尝试命名列以及表中列的顺序:
> describe formatted test_hive;
col1日期 col2字符串 col3字符串 abc decimal(11,2)
mth_year string
尝试将abc重命名为xyz并在col1之后移动它,但是当我运行
时alter table test_hive partition(mth_year) CHANGE abc xyz DECIMAL(11,2) AFTER col1;
但收到错误:
FAILED: SemanticException [Error 10006]: Partition not found {proc_mth_year=null}
我们可以在空分区表上进行更改吗?
答案 0 :(得分:1)
您必须注意特定的分区,例如 -
alter table test_hive partition (mth_year='03_2017')
change abc xyz decimal(11,2) after col1
;
或在表级中执行 -
alter table test_hive
change abc xyz decimal(11,2) after col1
cascade
;