Arrays 配置单元-从Json提取数组

Arrays 配置单元-从Json提取数组,arrays,amazon-web-services,hive,amazon-athena,Arrays,Amazon Web Services,Hive,Amazon Athena,我有一个包含一些值数组的表 create external table apidetails ( inputdetails sting ) Location 'XXXX' 从apidetails中选择inputdetails { "Name": "api-server1", "ID": "api-1", "tags": ["tag-1","tag-2"] } 我需要结果 |ID |标签| |-------|---------------| |api-1 |标签-1,标签-2| 我尝试选择

我有一个包含一些值数组的表

create external table apidetails
(
  inputdetails sting
)
Location 'XXXX'
从apidetails中选择inputdetails

{ "Name": "api-server1", "ID": "api-1", "tags": ["tag-1","tag-2"] }
我需要结果

|ID |标签|

|-------|---------------|

|api-1 |标签-1,标签-2|

我尝试选择json_extract_scalar(inputdetails,$tags'),但它返回错误。

这里有几个选项:

选项1:JSON
选项2:数组(varchar)
选项3:分隔字符串

是否可以删除“[”和“]”?
select  json_extract_scalar(inputdetails ,'$.ID') as ID
       ,json_extract(inputdetails ,'$.tags')      as tags

from    apidetails
;
  ID   |       tags
-------+-------------------
 api-1 | ["tag-1","tag-2"]
select  json_extract_scalar(inputdetails ,'$.ID')                       as ID
       ,cast(json_extract(inputdetails ,'$.tags') as array(varchar))    as tags

from    apidetails
;
  ID   |      tags
-------+----------------
 api-1 | [tag-1, tag-2]
select  json_extract_scalar(inputdetails ,'$.ID')                                       as ID
       ,array_join(cast(json_extract(inputdetails ,'$.tags') as array(varchar)),',')    as tags

from    apidetails
;
  ID   |    tags
-------+-------------
 api-1 | tag-1,tag-2