Gere o resultado de uma query em uma linha única separado por string TSQL
20/06/2014 13:59
Este script mostra como gerar um resultado único separado por "|" pipe, substitua a tabela temporária pela sua tabela de trabalho e referencie a coluna correta:
Query Exemplo (Base):
=======================
SELECT
CD_USUARIO
FROM
(SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 1'
UNION
SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 2') S
Example 1: Compatível a partir da versão do SQL 2000
=======================================================
DECLARE @RESULT VARCHAR(max)
SELECT
@RESULT = COALESCE(@RESULT + '| ', '') + CD_USUARIO
FROM
(SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 1'
UNION
SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 2') S
SELECT @RESULT
Example 2: Compatível a partir da versão do SQL 2005
=======================================================
SELECT
CD_USUARIO + '|'
FROM
(SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 1'
UNION
SELECT CD_USUARIO = '12345678', DESCR = 'TESTE 2') S
FOR xml path('')