sql 查询在 aws athena 中创建数组映射 (presto)

sql query for creating map of array in aws athena (presto)

我在 aws athena 中有一个 table,其中包含以下列

Company name  Employee Name   Salary
------------------------------------
 Apple       | John         | 50
 Apple       | Dima         | 100
 Microsoft   | Bart         | 75
 Google      | Harry        | 90
 Google      | Noah         | 80

我想通过单个查询生成以下 table 最好使用数组映射

Company name  Employee Data
------------------------------------
 Apple       | [John,50],[Dima,100]
 Microsoft   | [Bart,75]
 Google      | [Harry,90],[Noah,80]

知道怎么做吗?

PrestoDB 目前没有正式的组连接函数。但我们可以接近:

SELECT
    CompanyName,
    array_join(array_agg('[' || EmployeeName || ',' || Salary || ']'), ',', '') AS EmployeeData
FROM yourTable
GROUP BY
    CompanyName;