sexta-feira, 26 de outubro de 2012

Concatenando registros de várias linhas em uma só linha

estava vendo esse artigo http://classicasp.as...sql-server.html sobre envio de emails quando vi essa dica da concatenação com o comando COALESCE

segue um simples exemplo de uso:
--definindo banco de dadosuse pubs;
--variavel para receber os registros da tabela separados por;
DECLARE @Lista VARCHAR(80)
--zerando a variavel
SET @Lista = ''
--buscando dados
SELECT top 5 @Lista = @Lista + ';' + COALESCE(au_id, '') FROM authors--retirando 1º; da lista
SET @Lista = SUBSTRING(@Lista, 2, LEN(@Lista))
--verificando os dadosselect @Lista


irá retornar:
Quote
409-56-7008;648-92-1872;238-95-7766;722-51-5454;712-45-1867

(1 row(s) affected)

um bom exemplo de uso é o que mostra no artigo, o envio para diversos e-mails separando pelo ";"


t+ 

Nenhum comentário:

Postar um comentário