MySQL: Mit GROUP_CONCAT Zeilen in Spalten transponieren

SELECT … GROUP_CONCAT(expr) verknüpft die Felder, die bei der Gruppierung zeilenweise im Zwischenergebnis vorliegen hintereinander standardmäßig mit einem Komma (,) als Trennzeichen.

Beispiel:

SELECT
posts.subject,
posts.body,
GROUP_CONCAT(tags.tagname)
FROM
posts,
tags
WHERE
posts.id = tags.post_id
GROUP BY
posts.id

Ergebnis:

"Post1Titel"   "Post1Body"   "grün,gelb"
"Post2Titel"   "Post2Body"   "blau,rot, weiss"

statt wie sonst ohne Gruppierung:

"Post1Titel"   "Post1Body"   "grün"
"Post1Titel"   "Post1Body"   "gelb"
"Post2Titel"   "Post2Body"   "blau"
...

Verwandte Artikel:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.