假设我有一个表mytable:
select * from mytable
:
+------+------+------+ | a | b | c | +------+------+------+ | 1 | 1 | a | | 1 | 2 | b | +------+------+------+
我想用功能将列b和c分组group_concat
:
select a, group_concat(b), group_concat(c) from mytable group by a
+------+-----------------+-----------------+ | a | group_concat(b) | group_concat(c) | +------+-----------------+-----------------+ | 1 | 1,2 | a,b | +------+-----------------+-----------------+
我的问题是,MySQL是否保证,group_concat
始终会以相同的顺序进行操作,第二列中的结果不会像1、2,第三列中的结果是b,a?
您可以ORDER BY
在GROUP_CONCAT
函数内使用子句:
SELECT a,
GROUP_CONCAT(b ORDER BY b),
GROUP_CONCAT(c ORDER BY c)
FROM mytable GROUP BY a
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句