【发布时间】:2021-07-16 15:14:39
【问题描述】:
我有表格的数据
id | col1 | col2 | col3 | col4 | col5 | col6 |
----------------------------------------------
1 | a | b | c | d | e | f |
2 | a | b | c | d | e | f |
3 | a | b | c | d | e | f |
我正在尝试进入表单
id | key | value |
------------------
1 | col1| a
1 | col2| b
1 | col3| c
1 | col4| d
1 | col5| e
1 | col6| f
2 | col1| a
2 | col2| b
2 | col3| c
2 | col4| d
2 | col5| e
2 | col6| f
3 | col1| a
3 | col2| b
3 | col3| c
3 | col4| d
3 | col5| e
3 | col6| f
而且我终其一生都无法弄清楚如何去做。我可以完成相反的操作,并通过执行以下操作将地图转换为基于键的单行,但我不确定如何根据列从单行变为多行。
SELECT
id,
key['a'] AS col1,
key['b'] AS col2
FROM (
SELECT id, map_agg(key, value) key
FROM table_a
GROUP BY id
) temp
这在 presto 中是可能的吗?
【问题讨论】:
标签: sql join amazon-athena presto