gpt4 book ai didi

php - MySQL group_concat 并与另一个 group_concat 嵌套

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

不确定标题是否正确解释了情况,但我会尽力在这里解释。

我有一个表,其中有 3 个字段链接到其他表,我想按以下方式对所有行进行分组:

item_id, user_id, group_id
1 2 3
2 2 3
3 4 5
4 2 4

在我的查询中,我希望所有 items_id 以逗号分隔的格式按 group_id 分组,我在 WHERE 子句上也有一些额外的条件,这就是内部连接的原因

我可以用这个查询来做

 "SELECT 
GROUP_CONCAT( DISTINCT A.item_id ) AS ids
FROM tableA A
INNER JOIN tableB B ON(tableA.id = tableB.id)
WHERE xxxxx
GROUP BY A.group_id

"

稍后我可以循环结果并使用逗号分隔来内部循环结果中的每个 id

但我也想按 user_id 对它进行分组,以便做这样的事情

foreach( query_results.... ){
foreach( group_id.... ){
foreach( item_id.... ){
// Display info
}
}
}

对此有什么想法吗?

最佳答案

使用子查询,我们可以获得两个项目,用户作为两个单独的列

select T1.group_id, T1.itemids, T2.userids

FROM
(SELECT group_id,
GROUP_CONCAT( DISTINCT A.item_id ) AS itemids
FROM table1 A
group by group_id) T1
INNER JOIN
(
SELECT
group_id, GROUP_CONCAT( DISTINCT A.user_id ) AS userids
FROM table1 A
group by group_id
) T2
on T1.group_id = T2.group_id

关于php - MySQL group_concat 并与另一个 group_concat 嵌套,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26063932/

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