
Generieren von durch Kommas getrennten aggregierten Daten in SQL mit GROUP BY
Diese Anleitung erklärt, wie Sie Daten in SQL effizient aggregieren und die Ergebnisse als durch Kommas getrennte Listen ausgeben, die nach einer bestimmten Spalte gruppiert sind. Dies ist eine häufige SQL-Aufgabe mit mehreren Lösungen.
Die Herausforderung
Stellen Sie sich eine Tabelle vor, die so aufgebaut ist:
| ID | Value |
|---|---|
| 1 | a |
| 1 | b |
| 2 | c |
Ziel ist es, diese Daten zu konsolidieren, nach der Spalte ID zu gruppieren und die entsprechenden Value-Einträge in einer einzigen durch Kommas getrennten Zeichenfolge für jede Gruppe zu verketten.
Die Lösung: Nutzung von FOR XML PATH
Eine leistungsstarke und prägnante Methode nutzt das FOR XML PATH-Konstrukt:
<code class="language-sql">SELECT
ID,
STUFF((SELECT ', ' + Value
FROM YourTable t2
WHERE t1.ID = t2.ID
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 2, '') AS Values
FROM YourTable t1
GROUP BY ID;</code>Diese Abfrage verwendet eine Unterabfrage mit FOR XML PATH(''), um eine XML-Darstellung der verketteten Werte zu generieren. Die Methode .value('.', 'NVARCHAR(MAX)') extrahiert dies als String. Schließlich entfernt STUFF das führende Komma und das Leerzeichen.
Weitere Erkundung
Fortgeschrittenere Szenarien und alternative Ansätze finden Sie in den folgenden Ressourcen:
Durch die Verwendung der FOR XML PATH-Methode oder die Erkundung anderer SQL-Techniken können Sie Ihre Daten effektiv aggregieren und in einem benutzerfreundlichen, durch Kommas getrennten Format darstellen.
Das obige ist der detaillierte Inhalt vonWie rufe ich durch Kommas getrennte aggregierte SQL-Ergebnisse mithilfe von GROUP BY ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
So geben Sie den Drucker in Win10 frei
So öffnen Sie die Win11-Systemsteuerung
Verwendung der GAMMAINV-Funktion
SQL-Anweisung zum Sichern der Datenbank
So überprüfen Sie, ob Port 445 geschlossen ist
Formel des mechanischen Energieeinsparungsgesetzes
So öffnen Sie eine DMP-Datei
So öffnen Sie eine VSD-Datei