假设我有一列数组类型,例如[1,2,3,4]。我想把它变成类似
[{‘id’:1}, {‘id’:2}, {‘id’:3}, {‘id’:4}]
的东西。因此从技术上讲,使用双键。这可能吗?
我尝试了 MAP,但因重复键警告而失败
map
将创建一个地图,您需要将整数数组转换为地图数组,因此请使用 transform
:
-- sample data
WITH dataset (arr) AS (
values (array[1,2,3,4])
)
-- query
SELECT transform(arr, i -> map(array['id'], array[i]))
FROM dataset;
输出:
_col0
----------------------------------
[{id=1}, {id=2}, {id=3}, {id=4}]