sql >> Databasteknik >  >> RDS >> Sqlserver

SQL-kommaseparerad rad med Group By-sats

Du vill använda FOR XML PATH konstruera:

SELECT ACCOUNT, 
       unit, 
       SUM(state_fee), 
       Stuff((SELECT ', ' + code 
              FROM   tblmta t2 
              WHERE  t2.ACCOUNT = t1.ACCOUNT 
                     AND t2.unit = t1.unit 
                     AND t2.id = '123' 
              FOR XML PATH('')), 1, 2, '') [Codes] 
FROM   tblmta t1 
WHERE  t1.id = '123' 
GROUP  BY ACCOUNT, 
          unit 

Se andra exempel här:

  • SQL samma enhet mellan två tabeller behöver beställningsnummer i 1 cell
  • SQL-fråga för att få aggregerade resultat i kommaseparatorer tillsammans med grupp för kolumn i SQL Server


  1. Lista över territorier som stöds av Oracle Database

  2. Brott mot UNIQUE KEY-begränsning på INSERT WHERE COUNT(*) =0 på SQL Server 2005

  3. SÄTTA NAMN utf8 i MySQL?

  4. Vad är det bästa sättet att visa en bild från en sql-serverdatabas i asp.net?