sql >> Base de Datos >  >> RDS >> Sqlserver

Cómo escribir una consulta SQL para presentar valores horizontalmente

Marc tiene razón. No hagas esto en SQL, hazlo a nivel de presentación. Aún así, si quieres hacer esto, echa un vistazo aquí:How to return 1 single row data from 2 different tables with contenido dinámico en sql

Aplicado a su situación, el código podría ser:

     select SpecialistName , LEFT(JobsIds, len(JobsIds)-1) as JobsIds from 
(SELECT j.SpecialistName ,

      ( SELECT cast(j1.JobsId as varchar(10)) + ','

           FROM Jobs j1

          WHERE j1.SpecialistName = j.SpecialistName

          ORDER BY JobId

            FOR XML PATH('') ) AS JobsIds
      FROM Jobs j
      GROUP BY SpecialistName )A;