Ver Mensaje Individual
  #5 (permalink)  
Antiguo 19/01/2016, 07:22
Avatar de gnzsoloyo
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, 2 meses
Puntos: 2658
Respuesta: Consulta mysql ¿unir 2 tablas sin duplicados?

En un UNION, lo que se realiza es un "encadenamiento" de resultados entre dos tablas. Esa suma de resultados debe cumplir a rajatabla estas reglas:

1) Ambas tablas deben tener exactamente la misma cantidad de columnas en el SLECT. Si eso implica crear columnas virtuales, se deben crear.
2) Los tiposde columna de cada SELECT en el union deben ser exactamente del mismo tipo, y rango o charset.
3) Los nombres de columas en el primer SELECT suprimen los nombres de las columnas en los siguientes SELECT. Solo se verán los primeros.
4) UNION genera un DISTINCT automático, por lo que si se desean todos los resultados, sin descartar repeticiones, se debe usar UNION ALL.
5) Toda clausula GROUP BY u ORDER BY debe ser clausula final. Y aplcia a todo el resultado globalmente, por lo que puede entremezclar datos de diferentes tablas.

Por otro lado, tu mencionas "sin repeticiones".
Explcia a qué repeticiones te refieres, porque ciertas "repeticiones" no son tales en BBDD.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)