Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Resultados separados por vírgula no SQL


Use FOR XML PATH('') - que está convertendo as entradas para uma string separada por vírgula e STUFF() -que é para cortar a primeira vírgula- da seguinte forma O que fornece o mesmo resultado separado por vírgula
SELECT  STUFF((SELECT  ',' + INSTITUTIONNAME
            FROM EDUCATION EE
            WHERE  EE.STUDENTNUMBER=E.STUDENTNUMBER
            ORDER BY sortOrder
            FOR XML PATH(''), TYPE).value('text()[1]','nvarchar(max)')
           , 1, LEN(','), '') AS listStr

FROM EDUCATION E
GROUP BY E.STUDENTNUMBER

Aqui está o FIADO