对于结果中的每一行,我需要为从 0 开始的连接行中的每个字符串分配一个递增值。
这是一个简化的数据示例:
number|color
1 |red
1 |blue
1 |orange
2 |brown
3 |purple
3 |yellow
这是我需要的结果:
number|color_set
1 |0 red,1 blue,2 orange
2 |0 brown
3 |0 purple,1 yellow
这是我得到的结果:
number|color_set
1 |0 red,1 blue,2 orange
2 |3 brown
3 |4 purple,5 yellow
这是我一直在尝试的:
SET @x:=0;
SELECT number, GROUP_CONCAT(@x:=@x+1,' ',color SEPARATOR ',')
FROM table
GROUP BY number;
对于每个结果行,变量需要重置为 0。我显然不是专家,而且我是该网站的新手,因此非常感谢任何帮助。
谢谢,
周杰伦