Cita:
Iniciado por Montes28
sum codigo_observatorio
93 ovsm
71 ovsm
62 ovsp
57 ovsp
63 ovspop
32 ovspop
y necesito imprimirlo asi
ovsm 93 71
ovsp 62 57
ovspop 63 32
Ese tipo de resultado nunca lo obtendrás usando UNION. Sólo se consigue con un JOIN, y de todos modos es poco práctico para lo que necesitas hacer.
Una forma más sencilla sería:
Código MySQL:
Ver original V.codigo_observatorio,
IF(CIE.item_conectividad
= 1, SUM(CIE.cantidad
), 0)suma1
, IF(CIE.item_conectividad
= 2, SUM(CIE.cantidad
), 0)suma2
inv_est_instaladas IE
INNER JOIN conectividad_inv_estaciones CIE
ON IE.item
= CIE.item_inv_est_instaladas
CIE.item_conectividad
IN(1, 2)
Ahora bien, si lo quieres hacer al mismo estilo que lo planteabas tu, sería:
Código MySQL:
Ver original T1.codigo_observatorio, T1.suma Suma1, T2.suma Suma2
V.codigo_observatorio,
inv_est_instaladas IE
INNER JOIN conectividad_inv_estaciones CIE
ON IE.item
= CIE.item_inv_est_instaladas
CIE.item_conectividad = 1
V.codigo_observatorio,
inv_est_instaladas IE
INNER JOIN conectividad_inv_estaciones CIE
ON IE.item
= CIE.item_inv_est_instaladas
CIE.item_conectividad = 2
GROUP BY V.codigo_observatorio
) T2
ON T1.codigo_observatorio
= T2.codigo_observatorio
Como podrás ver, la primera forma es mucho más simple.