我在临时表中有几条记录,我想从每条记录中取一个值并将其添加到变量中,例如
color | caption
--------------------------------
red stop
blue state line
yellow yield
orange construction
var1 ='红色;蓝色;黄色;橙色'
在MSSQL中,我可以这样做:
-- MSSQL
select var1 = var1 + color
from signShapes
在MySQL中,这不起作用。我得到"橙色。"
-- mySQL
select var1 = concat(var1, color)
from signShapes
不,我知道我可以通过游标或循环完成此操作。我很好奇我是否可以在没有这两者的情况下做到这一点,类似于MSSQL方法。
答案 0 :(得分:2)
SELECT var1 = GROUP_CONCAT(color SEPARATOR ';')
FROM signShapes
GROUP BY color;
答案 1 :(得分:1)
为什么不这样做?
select var1 = group_concat(color separator ';')
from signShapes;