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

Unir 2 tablas sin perder información

Estas en el tema de Unir 2 tablas sin perder información en el foro de Mysql en Foros del Web. Tengo dos tablas pequeñas. Una de ellas tiene tres campos: | ID1 | FECHA | DATO1| con 100 registros. El campo FECHA va desde el ...
  #1 (permalink)  
Antiguo 25/10/2011, 03:04
 
Fecha de Ingreso: mayo-2004
Mensajes: 59
Antigüedad: 20 años, 6 meses
Puntos: 0
Unir 2 tablas sin perder información

Tengo dos tablas pequeñas.

Una de ellas tiene tres campos:

| ID1 | FECHA | DATO1|

con 100 registros.

El campo FECHA va desde el 1-1-2010 hasta el 10-04-2010

Luego tengo otra tabla que tiene la misma estructura:

| ID2 | FECHA | DATO2|

con 20 datos.

Aquí el campo FECHA va desde el 1-01-2010 hasta el 10-01-2010


Lo que busco es hacer una consulta que dé como resultado una tabla con la siguiente estructura:

| FECHA | DATO1 |DATO2|

con 100 registros, es decir, que recoja toda la información de la primera y de la segunda tabla.

Lo que he intentado siempre me ha dado como resultado una tabla con 10 registros, perdiendo la información de los restantes 90 registros de la primera tabla.

Un saludo y gracias por vuestra ayuda.
  #2 (permalink)  
Antiguo 25/10/2011, 04:13
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 13 años, 5 meses
Puntos: 14
Respuesta: Unir 2 tablas sin perder información

left join, righ join, inner join. Miralos y nos cuentas.
  #3 (permalink)  
Antiguo 25/10/2011, 04:19
 
Fecha de Ingreso: mayo-2004
Mensajes: 59
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: Unir 2 tablas sin perder información

Cita:
Iniciado por azimutisima Ver Mensaje
left join, righ join, inner join. Miralos y nos cuentas.
Todos me han dado el mismo resultado. Sólo salen 10 registros.

Gracias!
  #4 (permalink)  
Antiguo 25/10/2011, 04:29
Avatar de azimutisima  
Fecha de Ingreso: mayo-2011
Mensajes: 107
Antigüedad: 13 años, 5 meses
Puntos: 14
Respuesta: Unir 2 tablas sin perder información

y con Union?

Select * from tabla1 union select * from tabla2
  #5 (permalink)  
Antiguo 25/10/2011, 07:17
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Unir 2 tablas sin perder información

La consulta que planteas es inconsistente o puede serlo si las fechas de la segunda tabla no aparecen también en la primera. Y no te resultará usar un JOIN simple o un INNER JOIN.
De tener la primera tabla todas las fechas posibles, incluyendo las de la segunda, la respuesta sería:
Código MySQL:
Ver original
  1. SELECT T1.fecha, T1.dato1, T2.dato2
  2. FROM tabla1 T1. LEFT JOIN tabla2 T2
  3. WHERE 1 OR T2.dato2 IS NULL;

Te devolverá NULL en el dato2 donde la fecha de la primera tabla no aparezca en la segunda tabla.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 25/10/2011, 08:10
 
Fecha de Ingreso: mayo-2004
Mensajes: 59
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: Unir 2 tablas sin perder información

Esta me da error.


Cita:
Iniciado por gnzsoloyo Ver Mensaje
La consulta que planteas es inconsistente o puede serlo si las fechas de la segunda tabla no aparecen también en la primera. Y no te resultará usar un JOIN simple o un INNER JOIN.
De tener la primera tabla todas las fechas posibles, incluyendo las de la segunda, la respuesta sería:
Código MySQL:
Ver original
  1. SELECT T1.fecha, T1.dato1, T2.dato2
  2. FROM tabla1 T1. LEFT JOIN tabla2 T2
  3. WHERE 1 OR T2.dato2 IS NULL;

Te devolverá NULL en el dato2 donde la fecha de la primera tabla no aparezca en la segunda tabla.
  #7 (permalink)  
Antiguo 25/10/2011, 08:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Unir 2 tablas sin perder información

Cita:
Esta me da error.
Esto es lo mismo que no decir nada.... Trata de ser específico, porque este foro es técnico, no poético.

¿Qué error te devuelve y en qué contexto?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 25/10/2011, 08:34
 
Fecha de Ingreso: mayo-2004
Mensajes: 59
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: Unir 2 tablas sin perder información

Este es el error que me da:
Código:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '. LEFT JOIN tabla2 T2
WHERE 1 OR T2.dato2 IS NULL
L'
  #9 (permalink)  
Antiguo 25/10/2011, 09:10
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Unir 2 tablas sin perder información

Sorry...

Código MySQL:
Ver original
  1. SELECT T1.fecha, T1.dato1, T2.dato2
  2. FROM tabla1 T1. LEFT JOIN tabla2 T2 ON T1.fecha = T2.fecha
  3. WHERE 1 OR T2.dato2 IS NULL;

...de todos modos lo podrías haber resuelto simplemente mirando el manual de referncia...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 25/10/2011, 10:02
 
Fecha de Ingreso: mayo-2004
Mensajes: 59
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: Unir 2 tablas sin perder información

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Sorry...

Código MySQL:
Ver original
  1. SELECT T1.fecha, T1.dato1, T2.dato2
  2. FROM tabla1 T1. LEFT JOIN tabla2 T2 ON T1.fecha = T2.fecha
  3. WHERE 1 OR T2.dato2 IS NULL;

...de todos modos lo podrías haber resuelto simplemente mirando el manual de referncia...
Me da el mismo error, pero no te preocupes, ya lo miraré en el manual de referencia.
  #11 (permalink)  
Antiguo 25/10/2011, 11:34
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Unir 2 tablas sin perder información

¿Le estás poniendo o sacando algo más? ¿Cómo estás probandola?
Postea la sentencia tal y como la estás usando tu.

Tip: Ten cuidado con ese punto que me quedó detrás del "T1" en el FROM. Eso es un error de tpeo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: campos, perder, registros, tabla, tablas
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 23:03.