MySQL GROUP_CONCAT 不包括组值
Posted
技术标签:
【中文标题】MySQL GROUP_CONCAT 不包括组值【英文标题】:MySQL GROUP_CONCAT excluding group value 【发布时间】:2016-11-23 00:29:04 【问题描述】:我正在尝试为下表进行组连接
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
时,我想获得那些不属于该组的元素的组连接,并对数字求和(以类似的方式)。例如,我试图获得的输出是
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
【问题讨论】:
【参考方案1】:SELECT l, GROUP_CONCAT(DISTINCT r), SUM(num)
FROM groups
WHERE l <> r
GROUP BY l;
【讨论】:
以上是关于MySQL GROUP_CONCAT 不包括组值的主要内容,如果未能解决你的问题,请参考以下文章
MySQL:GROUP_CONCAT 中的 DISTINCT 删除相同的值(不重复)
MYSQL中group_concat有长度限制!默认1024
MYSQL中group_concat有长度限制!默认1024(转载)