【问题标题】:Using logical operators in json path file在 json 路径文件中使用逻辑运算符
【发布时间】:2016-07-17 15:20:04
【问题描述】:

是否有在复制命令中使用的 JSON 路径文件中使用逻辑运算符的功能。

例如,我有一个 JSON,它可以包含一个密钥,可以是

描述

或者

说明

所以在 JSON 中它会是这样的 -

{
"Desc": "Hello",
"City" : "City1",
"Age": "21"
}

{
"Description" : "World",
"City" : "City2",
"Age": "25"
}

我正在使用复制命令将数据从上面的 JSON 中提取到我的 redshift 表中。该表有一个名为“description_data”的列。这将存储“Desc”或“Description”的值。所以我希望我的路径文件使用“或”条件来识别。

这是我当前使用的路径文件 -

{
"jsonpaths": [
               "$['Desc']",
               "$['City']",
               "$['Age']"
             ]
}

哪个工作正常。

我正在尝试做的是以下(这是我不确定是否有任何语法或功能可以实现目标的地方)

   {
    "jsonpaths": [
                   "$['Desc']" or "$['Description']",
                   "$['City']",
                   "$['Age']"
                 ]
    }

【问题讨论】:

    标签: json amazon-s3 amazon-redshift jsonpath


    【解决方案1】:

    不,Redshift 不支持这个。

    您可以发出两条copy 命令,一条使用Desc,另一条使用Description,将数据加载到两个临时表中。之后,您可以将两者合并到您的决赛桌中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 2016-11-20
      相关资源
      最近更新 更多