sql >> Database teknologi >  >> RDS >> Sqlserver

SQL:Aggregerer strenge sammen

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

Bare udskift Data CTE med dit bordnavn, og du er færdig.



  1. Naturlig sortering i MySQL

  2. Sådan konverteres en streng til en dato/tid i SQL Server ved hjælp af CAST()

  3. Er det hurtigere eller bedre at bruge MySQL i stedet for tekstfiler eller filnavne til rækkefølge af billeder med PHP?

  4. 4 funktioner, der uddrager mikrosekunder fra en tidsværdi i MariaDB