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

Unir dos Tablas para combinar algunos campos

Estas en el tema de Unir dos Tablas para combinar algunos campos en el foro de Mysql en Foros del Web. Tengo las siguientes tablas: Ingreso (id_ingreso, fecha, producto, cantidad) Salida (id_salida, fecha, producto, cantidad) y los siguientes registros Ingreso// id_ingreso | fecha | producto | ...
  #1 (permalink)  
Antiguo 02/11/2010, 23:40
 
Fecha de Ingreso: febrero-2006
Mensajes: 22
Antigüedad: 18 años, 9 meses
Puntos: 0
Unir dos Tablas para combinar algunos campos

Tengo las siguientes tablas:

Ingreso (id_ingreso, fecha, producto, cantidad)
Salida (id_salida, fecha, producto, cantidad)

y los siguientes registros

Ingreso//
id_ingreso | fecha | producto | cantidad
--------------------------------------------------
1|20/10/2010| Manzana | 8
2|26/10/2010| Naranja | 5

Salida//
id_salida | fecha | producto | cantidad
--------------------------------------------------
1|24/10/2010| Manzana | 6
2|30/10/2010| Naranja | 4

Y necesito generar una consulta que obtenga la información de esta manera:

fecha | producto | Ingreso(cantidad) | Salida(cantidad)
---------------------------------------------------------------------
20/10/2010| Manzana | 8 | _ |
24/10/2010| Manzana | _ | 6|
26/10/2010| Naranja | 5 | _|
30/10/2010| Naranja | _ | 4|

Use la "Union All", la "Union" sola pero me salen 2 registros acoplados en vez de lo que quiero, y con las formas que he probado no he estado ni cerca de lo que necesito.
Alguien que me pudiera ayudar o por lo menos orientar porque no doy con la solución.
Gracias de antemano.
  #2 (permalink)  
Antiguo 03/11/2010, 02:49
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Unir dos Tablas para combinar algunos campos

Código MySQL:
Ver original
  1. Select sbc.fecha,sbc.producto,sum(sbc.ingreso),sum(sbc.salida)
  2. FROM (SELECT fecha,producto,cantidad as ingreso,0 as salida
  3.           FROM ingreso
  4.          UNION ALL
  5.           SELECT fecha,producto,0 as ingreso,cantidad as salida
  6.           FROM salida) as sbc
  7. GROUP BY sbc.fecha,sbc.producto

Algo así serviría?

Quim
  #3 (permalink)  
Antiguo 03/11/2010, 07:19
 
Fecha de Ingreso: febrero-2006
Mensajes: 22
Antigüedad: 18 años, 9 meses
Puntos: 0
Respuesta: Unir dos Tablas para combinar algunos campos

Código MySQL:
Ver original
  1. fecha,
  2. producto,
  3. cantidad as ingreso,
  4. ' ' as salida
  5. FROM ingreso
  6.  
  7.  
  8. fecha,
  9. producto,
  10. ' ' as ingreso,
  11. cantidad as salida
  12. FROM salida

Así me sirvio, esto hace exactamente lo que necesitaba, la clave estaba en asociar un alias vacío, esto a mí no se me había ocurrido.

Muchas gracias Quim

Etiquetas: campos, combinar, dos, 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 09:55.