如何更改/添加列到json serde表

时间:2018-03-19 11:18:28

标签: hadoop hive hiveql

我有一张桌子

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。

0 个答案:

没有答案