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

La subconsulta devolvió más de 1 valor

El error está aquí donde tiene muchas filas que intentan asignarse a una sola variable

SET @Recipients =(SELECT DISTINCT a.EMail
     FROM   a
    --approximately 600 email addresses 

Debería cambiarlo a una lista separada por lo tanto

SET @Recipients = STUFF(
           (select DISTINCT ';' + CAST(a.EMail AS varchar(max))
           FROM a FOR XML PATH ('')
           )
          ,1,1, '') 

Nota:@Recipients deberá ser varchar(max)