Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/11/2010, 09:07
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 11 meses
Puntos: 447
Respuesta: Crear consulta agrupando

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 original
  1. CREATE FUNCTION dbo.concatena (@nombre VARCHAR(50), @tipo VARCHAR(50))
  2. RETURNS VARCHAR(500) AS
  3. BEGIN
  4. DECLARE @regreso VARCHAR(500)
  5. SET @regreso = ''
  6. SELECT @regreso = @regreso + ltrim(rtrim(isnull(curso,'')))+','
  7. FROM (SELECT curso FROM TU_TABLA WHERE nombre = @nombre AND tipo = @tipo) t1
  8. RETURN SUBSTRING(@regreso, 1, len(@regreso)-1)
  9. 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:

Código:
Matematica,Fisica
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.