sql >> Database >  >> RDS >> Sqlserver

SQL Server:meerdere rijen combineren in één rij

Er zijn verschillende methoden.

Als u alleen de geconsolideerde tekenreekswaarde wilt retourneren, is dit een goede snelle en gemakkelijke aanpak

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

SELECT @combinedString as StringValue 

Wat je gecombineerde tekenreeks oplevert.

U kunt ook een van de XML-methoden proberen, b.v.

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


  1. Hoe om te gaan met een enkele aanhalingsteken in Oracle SQL

  2. PostgreSQL UITLEG – Wat zijn de querykosten?

  3. Een lange tekenreeks invoegen in CLOB-gegevenstype in Oracle

  4. scheidingstekens in MySQL