Presto-在列表上使用Serde吗?

问题描述

我有一个JSON文件,其内容如下:

{
  "key1": [
    "value1"
  ],"key2": [
    {
      "key3": "value3","key4": "value4
    }
  ],"key5": "value5"
}

要为此文件预先创建一个Serde表(不带“ key1”),我将这样做:

create table table_one
(
  key2 ARRAY (
    ROW (
      key3 varchar,key4 varchar
    )
  ),key5 varchar
)...

哪个工作正常。 但是我的问题是,当JSON文件的[]中没有键值时,如何在serde表中显示属性“ key1”?

谢谢, 比约恩

解决方法

您可以直接将其定义为varchar数组,假设它是字符串列表。

create table table_two
(
  key1 ARRAY (varchar),key2 ARRAY (
    ROW (
      key3 varchar,key4 varchar
    )
  ),key5 varchar
);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...