Heim  >  Artikel  >  Datenbank  >  Wie verkette ich mehrere Werte in einer durch Kommas getrennten Zeichenfolge in MySQL?

Wie verkette ich mehrere Werte in einer durch Kommas getrennten Zeichenfolge in MySQL?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-06 11:22:03959Durchsuche

How to Concatenate Multiple Values into a Comma-Separated String in MySQL?

Komma-getrennte Zeichenfolge ausgewählter Werte in MySQL

Problem:

Wie können Sie Ausgewählte Werte in eine durch Kommas getrennte Zeichenfolge in MySQL konvertieren? Sie haben beispielsweise eine Abfrage, die mehrere Werte zurückgibt, und Sie möchten diese in einer einzigen Zeichenfolge kombinieren.

Anfangscode:

Hier ist eine Beispielabfrage, die auswählt mehrere IDs aus einer Tabelle:

SELECT id
FROM table_level
WHERE parent_id = 4;

Gewünschte Ausgabe:

Anstelle separater Zeilen möchten Sie eine einzelne Zeichenfolge mit allen IDs durch Kommas getrennt erhalten:

"5,6,9,10,12,14,15,17,18,779"

Lösung:

Die Funktion GROUP_CONCAT() in MySQL ist genau für diesen Zweck konzipiert. Es verkettet mehrere Werte zu einer einzigen Zeichenfolge, getrennt durch ein angegebenes Trennzeichen. Hier ist eine überarbeitete Abfrage mit GROUP_CONCAT():

SELECT GROUP_CONCAT(id)
FROM table_level
WHERE parent_id = 4
GROUP BY parent_id;

Diese Abfrage gruppiert die Ergebnisse nach parent_id und verkettet die ID-Werte innerhalb jeder Gruppe mit einem Komma als Trennzeichen. Das Ergebnis ist eine einzelne Zeile, die die gewünschte durch Kommas getrennte Zeichenfolge von IDs enthält.

Das obige ist der detaillierte Inhalt vonWie verkette ich mehrere Werte in einer durch Kommas getrennten Zeichenfolge in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn