[ORACLE] Uma dica rápida para mailling


Uma dica bem rápida para criar uma lista de e-mails concatenada em uma linha só utilizando as funções CONCATENATE e CONCAT.

Suponhamos ter a tabela PESSOAS na seguinte estrutura:

PESSOAS
-CAMPO_NOME_DEST VARCHAR2(100)
-CAMPO_EMAIL_DEST VARCHAR2(100)

Nossa consulta ficará assim:

1
2
3
SELECT CONCATENATE(UPPER(NVL(CAMPO_NOME_DEST,SUBSTR(CAMPO_EMAIL_DEST,1,INSTR(CAMPO_EMAIL_DEST,'@')-1)))||' <'||CONCAT(LOWER(CAMPO_EMAIL_DEST),'>; ')) MAILLING
			FROM PESSOAS
			WHERE CAMPO_EMAIL_DEST IS NOT NULL;

Importante: O retorno é limitado no buffer, dessa forma, fazendo em PL/SQL, faça o que for preciso com a string de retorno em seguida limpe a variável antes de chegar em seu limite.


, , , ,

  1. Nenhum comentário ainda.
(não será publicado)