sql >> Databasteknik >  >> RDS >> Sqlserver

SQL:Aggregera strängar tillsammans

WITH Data AS (
    SELECT 1 UserId, 'A' Code 
    UNION ALL 
    SELECT 1, 'C5'
    UNION ALL 
    SELECT 1, 'X'
    UNION ALL 
    SELECT 2, 'V3'
    UNION ALL 
    SELECT 3, 'B'
    UNION ALL 
    SELECT 3, 'D'
    UNION ALL 
    SELECT 3, NULL
    UNION ALL 
    SELECT 3, 'F4'
    UNION ALL 
    SELECT 4, NULL
)
SELECT U.UserId, STUFF((
    SELECT ','+Code FROM Data WHERE Data.UserID = U.UserID FOR XML PATH('')
), 1, 1, '') Code 
FROM (SELECT DISTINCT UserID FROM Data) U

Byt bara ut Data CTE med ditt bordsnamn och du är klar.



  1. UTF-8 vs Latin1 mysql, index används inte på utf-8

  2. MYSQL-fråga för att välja resultatet av ett villkor för en tabell och visa det i en annan tabell

  3. Orakel. Hur skriver jag ut datum och tid?

  4. Dynamiska valalternativ php och mysql