【问题标题】:Apache drill selecting empty arrays from JSONApache 练习从 JSON 中选择空数组
【发布时间】:2016-08-24 14:00:54
【问题描述】:

我正在使用 Apache Drill 存储大型 JSON 文件,然后我使用 Drill API 进行如下查询:

{
    "queryType": "SQL",
    "query": "select * from db.table.`/path/to/JSON.json` w "
}

这会正确返回数据。但是,一些 JSON 文件有一个空数组。

例如下面是存储在数据库中的JSON

{
  "key1": ["array", "of", "data"],
  "key2": ["array", "of", "data"],
  "key3": ["array", "of", "data"],
  "key4": ["array", "of", "data"],
  "key5": ["array", "of", "data"],
  "key6": ["array", "of", "data"],
  "key7": [],
}   

当我检索此数据时,它返回如下

{
  "columns": [
    "key1",
    "key2",
    "key3",
    "key4",
    "key5",
    "key6",
  ],
  "rows": [
    {}
  ]
}

key7 丢失。即使某些存储的 JSON 文件可能为空,我如何获得显示此密钥的响应。

【问题讨论】:

    标签: hadoop apache-drill


    【解决方案1】:

    Drill 是少模式,因此如果任何行中没有数据,它将忽略该列,如果您知道需要该列,您可能需要使用“case”或“if”语句来添加默认值或创建一个查看。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-17
      • 1970-01-01
      • 1970-01-01
      • 2014-12-27
      • 1970-01-01
      相关资源
      最近更新 更多