sql >> Databáze >  >> RDS >> Sqlserver

SQL Server:sloučení více řádků do jednoho řádku

Existuje několik metod.

Pokud chcete vrátit pouze konsolidovanou hodnotu řetězce, je to dobrý rychlý a snadný přístup

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

SELECT @combinedString as StringValue 

Což vrátí váš kombinovaný řetězec.

Můžete také vyzkoušet některou z XML metod např.

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. Je jeden příkaz SQL Server atomický a konzistentní?

  2. Věci, které musíte vědět o tabulce FND_LOBS v Oracle Apps

  3. Jak vrátit přírůstkové číslo skupiny na skupinu v SQL

  4. Optimalizujte PostgreSQL pro rychlé testování