我有两个表,一个表示listings
表的tags
列表,另一个表示listings
表的listings
列表。
在tags
表中,标记id作为1-2-3-存储在名为listings
的字段中。这对我来说非常有效(正则表达式和连接来分离和显示数据),但是我现在需要将这些标记的标题拉到一行中。见下文。
listings table
id tags
1 1-2-3-
2 4-5-6-
tags table
id title
1 pig
2 dog
3 cat
4 mouse
5 elephant
6 duck
我需要从表中生成:
id tags
2 mouse, elephant, duck
最佳答案
这里有一个查询可以帮助您。但是,由于它正在执行一些字符串操作,因此它可能不如常规联接好:
select l.id, group_concat( t.title )
from listings l, tags t
where concat( '-', l.tags ) like concat( '%-', t.id, '-%' ) group by l.id ;
关于mysql - 将MySQL行条目合并为一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2761468/