Estoy sacando registros de direcciones de correo electrónico de una tabla en SQL Server 2005, y quiero construir una sola cadena para usar como la lista @recipients
con sp_send_dbmail
. La tabla tiene un campo llamado EmailAddress y hay 10 registros en la tabla.¿Por qué este script SQL funciona como lo hace?
que estoy haciendo esto:
DECLARE @email VARCHAR(MAX)
SELECT
@email = ISNULL(@email + '; ', '') + EmailAddress
FROM
accounts
Ahora @email tiene una lista semi-delimitada de 10 dirección de correo electrónico de la tabla de cuentas.
Mis preguntas son ¿por qué/cómo funciona esto? ¿Por qué @email no tiene la última dirección de correo electrónico en la tabla?
No lo sé, pero esta es una muy buena pregunta. No puedo esperar para ver las respuestas. – Kevin
Lo usamos hoy para crear una cadena de campos para un comando de pivote. Increíble. Me alegro de haberlo marcado. – BoltBait