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

Unir resultados de querys

Estas en el tema de Unir resultados de querys en el foro de Mysql en Foros del Web. Hola a todos. Mi problema es el siguiente. Tengo dos bases de datos en Mysql. En cada una de ellas hay dos tablas usuarios. Necesito ...
  #1 (permalink)  
Antiguo 27/12/2010, 02:06
Avatar de aalleexx81  
Fecha de Ingreso: noviembre-2009
Mensajes: 153
Antigüedad: 14 años, 5 meses
Puntos: 0
Pregunta Unir resultados de querys

Hola a todos. Mi problema es el siguiente.

Tengo dos bases de datos en Mysql. En cada una de ellas hay dos tablas usuarios.
Necesito hacer dos consultas, una para cada tabla, y me gustaría unir los resultados devueltos en un array para poder crear una nueva tabla en la cual se reflejen los campos de las dos tablas anteriores.

Os pongo un ejemplo para asegurarme de que queda claro:

Tengo la tabla TUsu1 con los campos nombre y apellidos en la BD1.

Y la tabla TUsu2 con los campos telefono y dni en la BD2.

Conecto con la BD1 y con la query1 selecciono los campos de la TU1, con lo que tendré un array con los campos: array1['nombre'] y array1['apellidos'].

Y conecto con la BD2 y con la query2 selecciono los campos de la TU2, con lo que tendré otro array con los campos: array2['telefono'] y array2['dni'].

Lo que quiero hacer es unificar cada fila de resultados de la query1, almacenados en al array1, con cada uno de los resultados de la query2, almacenados en array2, en un solo array.

De esta forma podré crear una tabla contenedora con los datos de las tablas TU1 y TU2.

Espero haberme explicado con claridad.

ME gustaría saber si es posible hacer lo que quiero o si es imposible.

Un saludo a todos y gracias por vuestro tiempo.
  #2 (permalink)  
Antiguo 27/12/2010, 03:01
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Unir resultados de querys

Si ademas de los campos que mencionas hay un campo comun a las dos tablas, es tan facil como hacer una query con las dos tablas, supongamos

BD1

TU1
idUsu
nombre
apellidos

BD2

TU2
idUsu
telefono
dni

Código MySQL:
Ver original
  1. INSERT INTO BD1.usuarios
  2.     SELECT BD1.TU1.idUsu as idOriginal,
  3.                  BD1.TU1.nombre,
  4.                  BD1.TU1.apellidos,
  5.                  BD2.TU2.telefono,
  6.                  BD2.TU2.dni
  7.      FROM BD1.TU1 inner join BD2.TU2
  8.                ON BD1.TU1.idUsu=BD2.TU2.idUsu

Previamente crea la tabla usuarios en la BD que quieras (en el ejemplo es en la BD1), en ella yo crearia un id auto incremental que se generará solo, el idOriginal perdera sentido pero no es malo guardarlo por si tines alguna cosa que dependa de el....

Si no tienes ningun campo en comun tendrás que exportar los datos y relacionarlos manualmente...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 27/12/2010, 04:29
Avatar de aalleexx81  
Fecha de Ingreso: noviembre-2009
Mensajes: 153
Antigüedad: 14 años, 5 meses
Puntos: 0
De acuerdo Respuesta: Unir resultados de querys

Muchas gracias quimfv, me has sido de gran ayuda.

Etiquetas: querys, resultados, 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 19:43.