alter-hive多列

brtdzjyr  于 2021-06-28  发布在  Hive
关注(0)|答案(1)|浏览(321)

如何更改配置单元中多个列的数据类型?

CREATE TABLE test_change (a int, b int, c int);

ALTER TABLE test_change CHANGE a a string b b doube c c decimal(11,2);
e7arh2l6

e7arh2l61#

据我所知,你不能。在配置单元文档中,您可以找到以下内容:
alter table table_name[partition partition_spec]change[column]col_old_name col_new name column_type[comment col_comment][first | after column_name][cascade | restrict];
此命令允许用户更改列的名称、数据类型、注解或位置,或它们的任意组合。分区子句在hive0.14.0及更高版本中可用;有关用法,请参阅升级配置单元0.13.0之前的十进制列。还提供了适用于hive 0.13的修补程序(请参阅hive-7971)。
文档中提到的是“一个专栏”。另一种方法是编写多个查询,每个需要更改的数据类型对应一个查询。
参考文献:https://cwiki.apache.org/confluence/display/hive/languagemanual+ddl

相关问题