con un coalesce lo obtienes....no entiendo los valores qeu pones pero para obtener el resultado que necesitas puedes hacer esto:
Código SQL:
Ver originalINSERT INTO tabla3(idresponsable, idtabla2, nombre, apellido1, apellido2)
VALUES
(1, 1, 'antonio', 'manuel', 'perez'),
(2, 1, 'pep', 'garc', 'luis'),
(3, 1, 'jon', 'tron', 'blas'),
(4, 1, 'anton', 'prru' ,'blis')
SELECT 1,1,(SELECT dbo.fn_concat()) AS cadena FROM tabla3
CREATE FUNCTION fn_concat()
RETURNS VARCHAR(800)
AS
BEGIN
DECLARE @Names VARCHAR(8000)
SELECT @Names = COALESCE(@Names + ', ', '') + nombre + ' ' + apellido1 + ' ' + apellido2 FROM tabla3
--print @names
RETURN @Names
END
ya en la funcion puedes mandar un parametro como el id o lo que necesites pero adecuandolo a tu problema
saludos!