我正在为下表做一个小组讨论

l   r   num
A   B   1
A   C   3
A   A   5
B   C   5
B   C   7
B   C   9
C   A   1
C   A   2
C   C   3

当我们使用GROUP BY时,我想得到那些不属于这个组的元素的组concat,并求和(以类似的方式)。例如,我试图获得的输出是
l   grps   sum(num)
A   B,C       4
B   C        21
C   A         3

我现在得到的输出如下
l   grps   sum(num)
A   B,C,A     9
B   C        21
C   A,C       6

我使用下面的查询
SELECT l, group_concat(distinct r), sum(num)
from groups
group by l;

SQL小提琴here

最佳答案

SELECT l, GROUP_CONCAT(DISTINCT r), SUM(num)
FROM groups
WHERE l <> r
GROUP BY l;

关于mysql - MySQL GROUP_CONCAT不包括组值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38469909/

10-14 14:57
查看更多