具有嵌套值 json 的外部表



我正在尝试创建一个外部表处理数据,如下所示:

{"Id":"1","att":{"value":0.5}}

我写了以下查询,但它不起作用:

CREATE EXTERNAL TABLE IF NOT EXISTS table_1 (Id bigint, att double), path)

但它为 ATT 提供空。如何在查询中引用值而不是 att ?我正在 Emr 和 Hive 上这样做。

下面是一个使用 JsonSerde 的示例,以便为未来的用户提供答案:

CREATE EXTERNAL TABLE IF NOT EXISTS table_1 (
    Id BIGINT, 
    att STRUCT<value:DOUBLE>)
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
LOCATION '/location';

最新更新