gpt4 book ai didi

Mysql 按多个具有不同值的列进行分组

转载 作者:行者123 更新时间:2023-11-29 10:25:00 25 4
gpt4 key购买 nike

我以这张表为例

id user_id user_name profile_image post_id
1 10 A a.png 1
2 11 B x.png 1
3 12 D j.png 4
4 13 F g.png 4

我想要的是按 post_id 对行进行分组,以便结果如下所示:

post_id    user_ids      user_names  profile_images
1 {10,11} {A,B} {a.png,x.ping}

我尝试使用GROUP BYJOIN,还有json_object
我怎样才能实现这一目标?

最佳答案

在 MySQL 版本 5.7.22 或更高版本上,我们可以使用 JSON_ARRAYAGG :

SELECT
post_id,
JSON_ARRAYAGG(user_id) AS user_ids,
JSON_ARRAYAGG(user_name) AS user_names,
JSON_ARRAYAGG(profile_image) AS profile_images
FROM yourTable
GROUP BY post_id;

关于Mysql 按多个具有不同值的列进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48473879/

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