Buenos días puppe, te dejo una función que te puede servir, lo que hace justamente es concatenar los resultados en un solo renglón, sólo tendrías que tener cuidado en que los tipos de datos de los parámetros correspondan a los de tu tabla y por supuesto cambiar el nombre de tu tabla
Código SQL:
Ver originalCREATE FUNCTION dbo.concatena (@nombre VARCHAR(50), @tipo VARCHAR(50))
RETURNS VARCHAR(500) AS
BEGIN
DECLARE @regreso VARCHAR(500)
SET @regreso = ''
SELECT @regreso = @regreso + ltrim(rtrim(isnull(curso,'')))+','
FROM (SELECT curso FROM TU_TABLA WHERE nombre = @nombre AND tipo = @tipo) t1
RETURN SUBSTRING(@regreso, 1, len(@regreso)-1)
END
Para invocar la función sólo tendrías que hacer algo como esto:
select dbo.concatena('Juan Perez', 'Logica')
el resultado debería ser este:
Sólo te faltaría armar la consulta para que te agrupe por nombre y tipo y enviar los parámetros de manera dinámica. Trata de sacar la consulta y si tienes problemas lo comentas en el foro.
Saludos
Leo.