Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/09/2013, 21:43
freedert
 
Fecha de Ingreso: enero-2011
Mensajes: 41
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: inner join con union

Cita:
Iniciado por jurena Ver Mensaje
[HIGHLIGHT="MySQL"]

He añadido los paréntesis y quitado las comillas del número, pero creo que el problema es ese 0, 0. No tiene mucho sentido para mí y son números, mientras que los primeros dos campos del otro select parece que son un código de producto que no sé si es texto o número, y el otro nombre de un producto. Por otra parte, ese 0, 0 no te devolverá nada más que eso 0, 0. Piensa que unirás 0 con mov_articulos.prod_cod y 0 mov_articulos.prod_nom, es decir, aparecerán como lo mismo. La unión no tiene mucho sentido ahí. Acláranos por qué usas ese 0, 0.
Buenas, aclaro lo de 0,0 lo uso como constantes para que no me de un error ya que los select a unir tienen distintas cantidades de elemento, es decir el error seria: "The used SELECT statements have a different number of columns" si no hago eso, puedo poner campos de la tabla para rellenar el agujero pero no varia en nada mi problema =/

hice la siguiente prueba usando datos para remplazar el 0,0 :

Código MySQL:
Ver original
  1. (SELECT mov_articulos.prod_cod, mov_articulos.prod_nom,  SUM(mov_articulos.prod_cant) AS egresos
  2.         FROM mov_articulos
  3.         INNER JOIN mov_factura
  4.         ON mov_factura.nro_factura = mov_articulos.id_comp
  5.         WHERE tipo_comp = 1
  6.         GROUP BY mov_articulos.prod_cod)
  7.                
  8.         UNION
  9.                
  10.         (SELECT mov_prov_articulos.prod_cod, mov_prov_articulos.prod_nom, SUM(mov_prov_articulos.prod_cant) AS ingresos
  11.         FROM mov_prov_articulos
  12.         INNER JOIN mov_prov_factura
  13.         ON mov_prov_factura.nro_factura = mov_prov_articulos.id_comp
  14.         WHERE tipo_comp = 1
  15.         GROUP BY mov_prov_articulos.prod_cod)

Pero no vario nada aun.

Última edición por freedert; 03/09/2013 a las 21:50