Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

Full join con union o con union all

Tengo una duda respecto al full join, cuando se genera se debe de colocar un right join y un left join, estos los une con union hasta aqui todo bien pero, ¿no se perderían datos debido a que union utiliza distinct de forma implicita? ¿deberia utiliza union o union all?

1 respuesta
solución!

Hola Omar, ¡espero que estés bien!

Entiendo que te preocupa la posibilidad de perder datos debido a que UNION utiliza DISTINCT de forma implícita.

En efecto, cuando utilizas UNION en una consulta SQL, se eliminan automáticamente los registros duplicados. Esto significa que solo se mostrarán los registros únicos en el resultado de la consulta. Por otro lado, UNION ALL no elimina los registros duplicados y muestra todos los registros de ambas tablas.

En resumen, la elección entre UNION y UNION ALL en una consulta que involucra FULL JOIN, LEFT JOIN o RIGHT JOIN dependerá de si deseas mantener o eliminar duplicados en el resultado final, y cómo deseas estructurar tu consulta.

Edición: En el ejemplo del profesor se utiliza UNION entonces no se producen elementos duplicados. Y en caso de que un cliente no tenga relación con un vendedor (o viceversa) se presenta la segunda parte de los atributos nula, como el profesor menciona en el ejemplo del video.

¡Espero haber sido de ayuda y te deseo mucho éxito en tus estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!