gpt4 book ai didi

sql - 如何将多个列聚合到 HIVE 中每个组的 JSON 文件中

转载 作者:行者123 更新时间:2023-12-05 07:42:36 24 4
gpt4 key购买 nike

我想将下表转换为包含两行的新表。在新表中,每个 user_id 都有一个 JSON 文件来汇总第一个表中的所有其他列。


user_id reservation_id 住宿价格
AAA 10001 1 100
美国汽车协会 10002 1 120
BBB 20003 7 350

user_id reservation_details
AAA {10001:{'nights':1, 'price':100}, 10002:{'nights':1, 'price':120}}
BBB {20003:{'nights':7, 'price':350}}

最佳答案

select      user_id
,concat("{",concat_ws(',',collect_list(concat(string(reservation_id),":{'nights':",string(nights),",'price':",string(price),"}"))),"}") as reservation_details

from mytable

group by user_id

+---------+-----------------------------------------------------------------+
| user_id | reservation_details |
+---------+-----------------------------------------------------------------+
| AAA | {10001:{'nights':1,'price':100},10002:{'nights':1,'price':120}} |
| BBB | {20003:{'nights':7,'price':350}} |
+---------+-----------------------------------------------------------------+

关于sql - 如何将多个列聚合到 HIVE 中每个组的 JSON 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44362597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com