在 AWS Athena 中,我想编写这样的查询:
SELECT some_function('row1,row2,row3');
回来
row1
row2
row3
我该怎么做呢?
我知道我可以写这个,但对我来说不太方便:
select * from (values ('row1'), ('row2'), ('row3'))
最佳答案
您可以使用 split 函数将字符串转换为数组,然后使用 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)
关于sql - AWS 雅典娜 : Convert a comma delimited string into rows,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57421469/