J'ai deux tables, une pour listings
et une autre représentant une liste de tags
pour la table listings
.Fusion des entrées de ligne MySQL en une seule ligne
Dans le tableau listings
, les identifiants d'étiquette sont stockés dans un champ appelé tags
en tant que 1-2-3-. Cela a très bien fonctionné pour moi (expressions régulières et jointures pour séparer et afficher les données), mais je dois maintenant tirer les titres de ces étiquettes dans une seule rangée. Voir ci-dessous.
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
Et ce que je dois produire de la table listings
est:
id tags
2 mouse, elephant, duck
Merci, c'est parfait et exactement ce dont j'ai besoin. –
Ma version à partir de votre version: SELECT l.id, GROUP_CONCAT (t.title) FROM liste l, étiquettes t O WH l.tags REGEXP CONCAT ('[[: <:]]', t.id, ' [[:>:]] ') GROUP BY l.id; –