Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server:Kombinieren mehrerer Zeilen zu einer Zeile

Es gibt mehrere Methoden.

Wenn Sie nur den konsolidierten Zeichenfolgenwert zurückgeben möchten, ist dies ein guter schneller und einfacher Ansatz

DECLARE @combinedString VARCHAR(MAX)
SELECT @combinedString = COALESCE(@combinedString + ', ', '') + stringvalue
FROM jira.customfieldValue
WHERE customfield = 12534
    AND ISSUE = 19602

SELECT @combinedString as StringValue 

Was Ihre kombinierte Zeichenfolge zurückgibt.

Sie können auch eine der XML-Methoden ausprobieren, z.

SELECT DISTINCT Issue, Customfield, StringValues
FROM Jira.customfieldvalue v1
CROSS APPLY ( SELECT StringValues + ',' 
              FROM jira.customfieldvalue v2
              WHERE v2.Customfield = v1.Customfield 
                  AND v2.Issue = v1.issue 
              ORDER BY ID 
                  FOR XML PATH('') )  D ( StringValues )
WHERE customfield = 12534
    AND ISSUE = 19602