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

Unir valores dependiendo de ciertos campos repetidos de diferentes tablas

Estas en el tema de Unir valores dependiendo de ciertos campos repetidos de diferentes tablas en el foro de Mysql en Foros del Web. Hola que tal, tendrán alguna idea o sabran sobre algun algoritmo de como se podria realizar la siguiente consulta: tengo 4 tablas, en cada una ...
  #1 (permalink)  
Antiguo 18/12/2010, 00:34
Avatar de despeinado  
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 14 años
Puntos: 0
Unir valores dependiendo de ciertos campos repetidos de diferentes tablas

Hola que tal, tendrán alguna idea o sabran sobre algun algoritmo de como se podria realizar la siguiente consulta:

tengo 4 tablas, en cada una de ellas existe un campo que su VALOR coindice entre las 4 ya que HACE QUE SE RELACIONEN LOS DATOS (c_id), lo que se requiere es sacar y unir en una fila los datos de varios campos solo si el campo (c_id) coincide con la tabla principal, pero resulta que el VALOR de c_id puede estar repetido en la tabla 2, y en la tabla 3 de igual manera lo podemos encontrar repetido asi como en la tabla4, donde no se repite es en la tabla principal t1p

t1p t2 t3 t4

c_id c_id c_id c_id
campo1 campe1 campi1 campu1
campo2 campe2 campi2 campu2

Ahora si en las tablas t2.c_id,t3.c_id,t4.c_id coincide con t1p.c_id (que es la principal) entonces que traiga los valores de sus campos de cada una de esas tablas.

Lo interesante viene como ya mencione cuando encuentra nuevamente un valor repetido en c_id en t2,t3 o t4 pero LOS VALORES DE SUS CAMPOS SON DIFERENTES y es necesario sacar esos campos tambien pero SIN REPETIR TODA LA FILA, si me explico????

Ya intente lo siguiente:

SELECT t1p.campo1, t1p.campo2, t2.campe1, t2.campe2, t3.campi1, t3.campi2, t4.campu1, t4.campu2 FROM tabla1 AS t1p LEFT JOIN(tabla2 AS t2) ON (t1p.c_id=t2.c_id) LEFT JOIN(tabla3 AS t3) ON (t1p.c_id=t3.c_id) LEFT JOIN(tabla4 AS t4) ON (t1p.c_id=t4.c_id) \G;

Entonces suponiendo que en la tabla2 esta repetido 2 veces el c_id con el valor 7 que coincide con el c_id=7 de la tabla t1p pero en campe1 y campe2 tienen diferente valor en ambos casos por lo que me regresa 2 filas Y LO QUE SE REQUIERE ES QUE CAMPE1 Y CAMPE2 SE ANEXEN A LA PRIMER FILA Y QUE NO SE GENERE UNA SEGUNDA.

Si se entiende??? la verdad es que estoy iniciando en esto del manejo de bd´s y es la primera vez que empiezo a lidiar con esto he estado buscando viendo algunos ejemplos con el join y union de mysql pero la verdad nada me ha resuelto.

Espero pueda encontrar alguna ayuda por aqui.
Saludos!!!!!
  #2 (permalink)  
Antiguo 23/12/2010, 19:13
Avatar de despeinado  
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 14 años
Puntos: 0
Sonrisa Respuesta: Unir valores dependiendo de ciertos campos repetidos de diferentes tablas

Ya encontre una solución, la verdad es que todo lo tuve que hacer con PHP creando arreglos en cada consulta despues iterarlos e incrustar los datos en las filas al exportar a excel.

La verdad me costo un buen porque apenas si le hallo a PHP me tuve que hechar un clavado profundo .

gracias de todos modos.

Saludos!!!!

Etiquetas: campos, ciertos, dependiendo, diferentes, repetidos, tablas, unir
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 21:49.