Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/05/2011, 14:26
vivi0309
 
Fecha de Ingreso: julio-2009
Mensajes: 29
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: Full outer join..???...

Bueno, me respondo a mi misma... La consulta me quedo asi:

Código MySQL:
Ver original
  1. `vistaUnion`.identificacion,
  2. `vistaUnion`.descripcion,
  3. `vistaUnion`.tipo,
  4. SUM(porcentaje) as porcentaje, "SI" as esta
  5. `vistaUnion`
  6. RIGHT JOIN distribucioncc ON `vistaUnion`.identificacion = distribucioncc.identificacion
  7. WHERE `vistaUnion`.identificacion IN(SELECT distribucioncc.identificacion FROM distribucioncc)
  8. AND distribucioncc.id_tipoDist = 1
  9. GROUP BY `vistaUnion`.identificacion, `vistaUnion`.descripcion, `vistaUnion`.tipo
  10. `vistaUnion`.identificacion,
  11. `vistaUnion`.descripcion,
  12. `vistaUnion`.tipo,
  13. SUM(porcentaje) as porcentaje, "NO" as esta
  14. `vistaUnion`
  15. LEFT JOIN distribucioncc ON `vistaUnion`.identificacion = distribucioncc.identificacion
  16. WHERE `vistaUnion`.identificacion NOT IN(SELECT distribucioncc.identificacion
  17. FROM distribucioncc WHERE distribucioncc.id_tipoDist = 1)
  18. GROUP BY `vistaUnion`.identificacion, `vistaUnion`.descripcion, `vistaUnion`.tipo

Y segun yo... lo que hace es que en el primer SELECT me muestra todos los registros que estan tanto en la vista como en mi tabla de distribucionCC y que el tipo de distribucion sea igual al parametro enviado...

En mi segundo SELECT hago todo lo contrario... me muestra todos los registros de mi vista que no aparecen en la tabla de distribucionCC...

Asi se que elementos puedo agregar o no a mi tabla de distribucionCC...

Quizas esto le pueda servir a alguien..