Inner Join vs. Unión exterior

Inner Join vs. Unión exterior


En SQL, un unirse se utiliza para comparar y combinar, literalmente unirse, y devolver filas específicas de datos de dos o más tablas en una base de datos. Un unir internamente Encuentra y devuelve datos coincidentes de las tablas, mientras que un unión exterior Encuentra y devuelve datos coincidentes y Algunos datos diferentes de tablas.

Unir internamente

Una unión interna se centra en la comunidad entre dos tablas. Al usar una unión interna, debe haber al menos algunos datos coincidentes entre dos (o más) tablas que se están comparando. Una junta interna busca tablas para que coincidan o se superpongan los datos. Al encontrarlo, la unión interna combina y devuelve la información a una nueva tabla.

Ejemplo de unión interior

Consideremos un escenario común de dos tablas: precios y cantidades de productos. La información común en las dos tablas es el nombre del producto, por lo que esa es la columna lógica para unir las tablas en. Hay algunos productos que son comunes en las dos tablas; Otros son exclusivos de una de las tablas y no tienen una coincidencia en la otra mesa.

Una unión interior Productos Devuelve información sobre aquellos productos que son comunes en ambas tablas.

Unión exterior

Una unión externa devuelve un conjunto de registros (o filas) que incluyen lo que una unión interna regresaría, pero también incluye otras filas para las cuales no se encuentra ninguna coincidencia correspondiente en la otra tabla.

Hay tres tipos de uniones externas:

  • Izquierda Outer se une (o se une a la izquierda)
  • Unión exterior derecha (o unión derecha)
  • Unión externa completa (o unión completa)

Cada una de estas uniones externas se refiere a la parte de los datos que se están comparando, combinados y devueltos. A veces se producirán NULLS en este proceso a medida que se comparten algunos datos, mientras que otros datos no son.

Izquierda combinación externa

Una unión externa izquierda devolverá todos los datos en la Tabla 1 y todos los datos compartidos (por lo tanto, la parte interna del ejemplo del diagrama de Venn), pero solo los datos correspondientes de la Tabla 2, que es la unión derecha.

Ejemplo de unión de izquierda

En nuestra base de datos de ejemplo, hay dos productos, naranjas y tomates, en la 'izquierda' (Precios Tabla) que no tienen una entrada correspondiente en la 'derecha' (tabla de cantidades). En una unión a la izquierda, estas filas se incluyen en el conjunto de resultados con un nulo en la columna de cantidad. Las otras filas en el resultado son las mismas que la unión interna.

Unión exterior derecha

Una unión exterior derecha devuelve los datos de la Tabla 2 y todos los datos compartidos, pero solo los datos correspondientes de la Tabla 1, que es la unión izquierda.

Ejemplo de unión correcta

Similar al ejemplo de la unión izquierda, la salida de una unión externa derecha incluye todas las filas de la unión interna y dos filas, brócoli y calabaza, desde la 'derecha' (Cantidades tabla) que no tienen entradas coincidentes a la izquierda.

Unión externa completa

Una unión exterior completa o unión completa, que es no compatible con el popular sistema de gestión de bases de datos MySQL, combina y devuelve todo datos de dos o más tablas, independientemente de si hay información compartida. Piense en una unión completa como simplemente duplicando toda la información especificada, pero en una tabla, en lugar de múltiples tablas. Donde faltan datos coincidentes, se producirán nulos.

Estos son solo lo básico, pero se pueden hacer muchas cosas con uniones. Incluso hay uniones que pueden excluir otras uniones!

Video explicando uniones internas vsuter

Este video explica la diferencia entre varios tipos de uniones. Se indica que comenzará en el punto en que comienza la discusión sobre las uniones.