标签: sql presto amazon-athena
在AWS Athena中,我想编写如下查询:
SELECT some_function('row1,row2,row3');
然后回来
row1 row2 row3
我该怎么做?
我知道我可以改写这个,但这对我来说不太方便:
select * from (values ('row1'), ('row2'), ('row3'))
答案 0 :(得分:6)
您可以使用split函数将字符串转换为数组,然后使用UNNEST将数组转换为行。例如:
UNNEST
WITH t AS ( SELECT 'row1,row2,row3' AS data ) SELECT value FROM t CROSS JOIN UNNEST(split(t.data, ',')) as x(value)
value ------- row1 row2 row3 (3 rows)