我正在尝试在一个列中合并不同的旧值。 我有这张桌子
id code langtype desc duration
232 1104466 1 IT text 10
233 1104466 2 EN text 10
234 1104466 6 other desc 10
235 1104466 1 Other IT text(different row) 10
236 1104466 2 Other EN text(same row of previous) 10
我想获得这样的结果
id code desc duration
232 1104466 “IT” = “IT TEXT”, EN=”EN TEXT”, “ES”=”Other desc” 10
可能是mysql吗?
谢谢
答案 0 :(得分:1)
是的,有可能。这样的事情应该达到这个效果:
select group_concat(concat(langtype, ' = ', desc))
from table
group by code
这里我们首先形成一个从每一行(concat(langtype, ' = ', desc)
)中提取的值,然后为每个分组行(group_concat
)连接它。您可以更改分隔符,或在需要的位置添加引号 - 查看GROUP_CONCAT和CONCAT文档。