我有一张桌子
CREATE EXTERNAL TABLE IF NOT EXISTS XYZ.testtable (
x BIGINT,
y STRING,
z STRING
)
PARTITIONED BY (
date string,
hour STRING
)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
WITH SERDEPROPERTIES ( 'paths'='x, y, z')
STORED AS TEXTFILE
LOCATION 'testlocation/testtable'
有大量的json数据。我想在现有表中添加一个类似c的列,所以我尝试了
>1. alter table XYZ.testtable add columns (c STRING);
> 2.ALTER TABLE XYZ.testtable SET SERDEPROPERTIES ( 'paths'='x, y, z, c')
但json文件中存在的c值为null。
我尝试删除并使用'c'列重新创建表。它工作正常。可以任何人帮助如何改变jsonserde表添加coulmn。