Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

¿cómo concatenar filas en una columna?

Estas en el tema de ¿cómo concatenar filas en una columna? en el foro de SQL Server en Foros del Web. Hola a todos vengo con una super duda tengo la siguiente base de datos: la primer tabla(usuarios) es una tabla de usuarios la 2°(detalle de ...
  #1 (permalink)  
Antiguo 15/02/2010, 12:23
 
Fecha de Ingreso: octubre-2008
Mensajes: 61
Antigüedad: 15 años, 6 meses
Puntos: 0
Pregunta ¿cómo concatenar filas en una columna?

Hola a todos vengo con una super duda

tengo la siguiente base de datos:

la primer tabla(usuarios) es una tabla de usuarios la 2°(detalle de usuarios), es una tabla de intersección para el detalle de los usuarios y la 3°(clasificación) es un catálogo.
Todo ello de la siguiente manera:



tengo los siguientes datos:

usuarios detalle usuarios clasificación
idUsuario | usuario idUsuario | clasificación idClasificación | clasificación
1 | Maria 1 | 1 1 | clasificación A
2 | Juan 1 | 1 2 | clasificación B
2 | 2 1

como cada usuario puede tener mas de una clasificación, si quiero hacer una consulta para saber la clasificación de cada quien me aparece lo siguiente.

idUsuario | Clasificación
Maria | clasificación A
Maria | clasificación B
Juan | clasificación A

lo cual es correcto debido a que María se encuentra en 2 clasificaciones, la pregunta es como puedo hacer para que me concatene la clasificación, es decir

idUsuario | Clasificación
Maria | clasificación A, clasificación B
Juan | clasificación A

todo esto en el entendido de que estoy usando una tabla de intersección (detalle de usuarios).

Alguna idea?
  #2 (permalink)  
Antiguo 15/02/2010, 13:49
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: ¿cómo concatenar filas en una columna?

Puedes hacer una FUNCION (UDF) que reciba como parametro el IDUsuario y te regrese concatenados las clasficaciones que tiene.
  #3 (permalink)  
Antiguo 15/02/2010, 17:59
 
Fecha de Ingreso: octubre-2008
Mensajes: 61
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: ¿cómo concatenar filas en una columna?

Cita:
Iniciado por iislas Ver Mensaje
Puedes hacer una FUNCION (UDF) que reciba como parametro el IDUsuario y te regrese concatenados las clasficaciones que tiene.
de echo probe esto:
http://www.forosdelweb.com/f87/concatenar-varios-resultados-sola-celda-704446/

pero aún así sql server 2005 no me lo acepta.
  #4 (permalink)  
Antiguo 15/02/2010, 18:29
 
Fecha de Ingreso: marzo-2004
Mensajes: 70
Antigüedad: 20 años, 1 mes
Puntos: 0
Respuesta: ¿cómo concatenar filas en una columna?

lo acabo de probar y si sale.. en mssql 2005...

1. Que error te bota?
2. Postea tu codigo?
__________________
GuzZpaWn
  #5 (permalink)  
Antiguo 16/02/2010, 11:21
 
Fecha de Ingreso: octubre-2008
Mensajes: 61
Antigüedad: 15 años, 6 meses
Puntos: 0
De acuerdo Respuesta: ¿cómo concatenar filas en una columna?

Me marcaba un error con la variable retorno que no podía ser utilizada en el select.

sin embargo volví a intentarlo para postear el error y salió, gracias de todos modos amigo, aprecio tu amable ayuda

de todos modos el error fue el siguiente:

Código:
No debe combinarse una instrucción SELECT que asigne un valor 
a una variable con operaciones de recuperación de datos.

Etiquetas: columna, concatenar, filas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:46.