我有一个配置单元表,其中一列为 map 数据类型。
map<int,struct<id :bigint,QTY:decimal(12,4),DISC_AMT:decimal(20,4),DISC_TYPE:string>>
现在我想在结构值中添加一列,如下所示:
map<int,struct<id :bigint,QTY:decimal(12,4),DISC_AMT:decimal(20,4),DISC_TYPE:string,new_column :int>>
任何人都知道如何实现这一目标。
提前致谢。
最佳答案
alter table t change column mycol mycol map<int,struct<id:bigint,QTY:decimal(12,4),DISC_AMT:decimal(20,4),DISC_TYPE:string,new_column:int>>;
请注意,默认情况下只有新分区会受到更改的影响。
如果您希望它应用于所有分区,请在末尾添加单词 cascade
关于sql - 改变 hive 中的现有 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41171758/