Uniones de DBMS: THETA, interna, externa, equi Tipos de unión
⚡ Resumen inteligente
En los sistemas de gestión de bases de datos (DBMS), la operación de unión (join) es una operación binaria que combina filas de dos o más tablas utilizando sus claves primarias y foráneas. Las uniones se dividen en uniones internas, que devuelven solo las filas coincidentes, y uniones externas, que conservan las filas no coincidentes y rellenan los huecos con valores nulos.

¿Qué es una unión (Join) en un sistema de gestión de bases de datos (DBMS)?
Únete a DBMS es una operación binaria que permite combinar un producto de unión y una selección en una sola instrucción. El objetivo de crear una condición de unión es combinar los datos de dos o más tablas. Las tablas se asocian mediante sus claves primarias y llaves extranjeras.
Tipos de Unión
Existen principalmente dos tipos de uniones en DBMS:
- Uniones internas: Theta, Natural, EQUI
- Uniones externas: izquierda, derecha, completa
La tabla que aparece a continuación muestra una vista previa de todos los tipos de unión antes de explicar cada uno con un ejemplo.
| Recibir el boletín | Returns | Filas no coincidentes |
|---|---|---|
| Interno (Theta / EQUI / Natural) | Filas que coinciden con la condición en ambas tablas | Abandonado |
| Exterior izquierdo | Todas las filas de la izquierda más los partidos | Conservado de la izquierda, nulo de la derecha |
| exterior derecho | Todas las filas derechas más partidos | Conservado desde la derecha, nulo en la izquierda |
| Exterior completo | Todas las filas de ambas tablas | Conservado de ambos, nulo donde falta |
Unir internamente
Unir internamente Se utiliza para devolver filas de ambas tablas que cumplan la condición dada. Es la operación de unión más utilizada y puede considerarse el tipo de unión predeterminado.
Una unión interna, o equijoin, es una unión basada en comparadores que utiliza comparaciones de igualdad en el predicado de unión. Sin embargo, si se utilizan otros operadores de comparación como ">", no se puede denominar equijoin. La unión interna se divide además en tres subtipos:
- Theta unirse
- Unión natural
- Únete a EQUI
Unión theta
Unión theta Permite fusionar dos tablas según la condición representada por theta. Las uniones theta funcionan con todos los operadores de comparación. Se denota con el símbolo θEl caso general de una operación JOIN se denomina unión theta.
Sintaxis:
A ⋈θ B
Una unión theta puede utilizar cualquier condición en los criterios de selección.
Considere las siguientes tablas.
| Tabla A | Tabla b | |||
|---|---|---|---|---|
| columna 1 | columna 2 | columna 1 | columna 2 | |
| 1 | 1 | 1 | 1 | |
| 1 | 2 | 1 | 3 | |
Por ejemplo:
A ⋈ A.column 2 > B.column 2 (B)
| A ⋈ A.columna 2 > B.columna 2 (B) | |
|---|---|
| columna 1 | columna 2 |
| 1 | 2 |
Únete a EQUI
Únete a EQUI se realiza cuando una unión theta utiliza solo la condición de equivalencia. La unión EQUI es la operación más difícil de implementar de manera eficiente en un RDBMSy es una de las razones por las que un sistema de gestión de bases de datos relacionales (RDBMS) puede tener problemas de rendimiento.
Por ejemplo:
A ⋈ A.column 2 = B.column 2 (B)
| A ⋈ A.columna 2 = B.columna 2 (B) | |
|---|---|
| columna 1 | columna 2 |
| 1 | 1 |
Unión natural (⋈)
Unión natural No utiliza ningún operador de comparación. En este tipo de unión, los atributos deben tener el mismo nombre y dominio. En una unión natural, debe haber al menos un atributo común entre las dos relaciones.
Realiza una selección que establece la igualdad en los atributos que aparecen en ambas relaciones y elimina los atributos duplicados.
Ejemplo: Considere las dos tablas siguientes.
| C | |
|---|---|
| num | Cuadrado |
| 2 | 4 |
| 3 | 9 |
| D | |
|---|---|
| num | Cubo |
| 2 | 8 |
| 3 | 18 |
C ⋈ D
| C⋈D | ||
|---|---|---|
| num | Cuadrado | Cubo |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
Unión externa
An Unión externa No requiere que cada registro en las dos tablas unidas tenga un registro coincidente. En este tipo de unión, la tabla conserva cada registro incluso si no existe ningún otro registro coincidente. Los tres tipos de unión externa son:
- Izquierda combinación externa
- Unión exterior derecha
- Unión externa completa
Unión exterior izquierda (A ⟕ B)
Izquierda combinación externa Devuelve todas las filas de la tabla de la izquierda, incluso si no se encuentran filas coincidentes en la tabla de la derecha. Si no se encuentra ningún registro coincidente a la derecha, se devuelve null.
Considere las dos tablas siguientes.
| A | |
|---|---|
| num | Cuadrado |
| 2 | 4 |
| 3 | 9 |
| 4 | 16 |
| B | |
|---|---|
| num | Cubo |
| 2 | 8 |
| 3 | 18 |
| 5 | 75 |
AB
| A ⟕ B | ||
|---|---|---|
| num | Cuadrado | Cubo |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | – |
Unión externa derecha (A ⟖ B)
Unión exterior derecha Devuelve todas las columnas de la tabla de la derecha, incluso si no se encuentran filas coincidentes en la tabla de la izquierda. Si no se encuentran coincidencias en la izquierda, se devuelve null. Una unión externa derecha es lo opuesto a una unión izquierda.
AB
| A ⟖ B | ||
|---|---|---|
| num | Cubo | Cuadrado |
| 2 | 8 | 4 |
| 3 | 18 | 9 |
| 5 | 75 | – |
Unión externa completa (A ⟗ B)
En un Unión externa completa, todas las tuplas de ambas relaciones se incluyen en el resultado, independientemente de la condición de coincidencia.
Ejemplo:
AB
| A ⟗ B | ||
|---|---|---|
| num | Cuadrado | Cubo |
| 2 | 4 | 8 |
| 3 | 9 | 18 |
| 4 | 16 | – |
| 5 | – | 75 |


