Álgebra relacional en DBMS: Operaciones con ejemplos
Álgebra relacional
ÁLGEBRA RELACIONAL es un lenguaje de consulta procedimental ampliamente utilizado. Recopila instancias de relaciones como entrada y proporciona ocurrencias de relaciones como salida. Utiliza varias operaciones para realizar esta acción. Las operaciones de consulta del álgebra relacional SQL se realizan de forma recursiva en una relación. La salida de estas operaciones es una nueva relación, que puede formarse a partir de una o más relaciones de entrada.
Álgebra relacional básica de SQL OperaSupuestos de Alcance
Álgebra relacional dividida en varios grupos
Relacional unario OperaSupuestos de Alcance
- SELECCIONAR (símbolo: σ)
- PROYECTO (símbolo: π)
- RENOMBRAR (símbolo: ρ)
Álgebra relacional Operaciones de la teoría de conjuntos
- UNIÓN (υ)
- INTERSECCIÓN ( ),
- DIFERENCIA (-)
- PRODUCTO CARTESIANO ( x )
Binario Relacional OperaSupuestos de Alcance
- ÚNETE
- DIVISIÓN
Estudiémoslos en detalle con soluciones:
SELECCIONAR (σ)
La operación SELECT se utiliza para seleccionar un subconjunto de las tuplas según una condición de selección dada. El símbolo Sigma(σ) lo denota. Se utiliza como expresión para elegir tuplas que cumplen la condición de selección. El operador Select selecciona tuplas que satisfacen un predicado dado.
σp(r)
σ
es el predicado
r
significa relación que es el nombre de la tabla
p
es lógica preposicional
Ejemplo
σ topic = "Database" (Tutorials)
Salida – Selecciona tuplas de Tutoriales donde tema = 'Base de datos'.
Ejemplo
σ topic = "Database" and author = "guru99"( Tutorials)
Salida – Selecciona tuplas de Tutoriales donde el tema es "Base de datos" y el "autor" es guru99.
Ejemplo
σ sales > 50000 (Customers)
Salida – Selecciona tuplas de Clientes donde las ventas son superiores a 50000
Proyección (π)
La proyección elimina todos los atributos de la relación de entrada excepto los mencionados en la lista de proyecciones. El método de proyección define una relación que contiene un subconjunto vertical de Relación.
Esto ayuda a extraer los valores de atributos específicos para eliminar valores duplicados. El símbolo (pi) se utiliza para elegir atributos de una relación. Este operador le ayuda a conservar columnas específicas de una relación y descarta las demás columnas.
Ejemplo de proyección:
Considere la siguiente tabla
Identificación del cliente | Nombre del cliente | Estado |
---|---|---|
1 | Active | |
2 | Amazon | Active |
3 | Verde | Inactivo |
4 | Alibaba | Active |
Aquí, la proyección del nombre del cliente y el estado le darán
Π CustomerName, Status (Customers)
Nombre del cliente | Estado |
---|---|
Active | |
Amazon | Active |
Verde | Inactivo |
Alibaba | Active |
Cambiar nombre (ρ)
Cambiar nombre es una operación unaria utilizada para cambiar el nombre de los atributos de una relación.
ρ (a/b)R cambiará el nombre del atributo 'b' de la relación por 'a'.
Operación de unión (υ)
LA UNIÓN está simbolizada por el símbolo ∪. Incluye todas las tuplas que están en las tablas A o en B. También elimina tuplas duplicadas. Así, el conjunto A UNIÓN conjunto B se expresaría como:
El resultado <- A ∪ B
Para que una operación sindical sea válida, deben cumplirse las siguientes condiciones:
- R y S deben tener el mismo número de atributos.
- Los dominios de atributos deben ser compatibles.
- Las tuplas duplicadas deben eliminarse automáticamente.
Ejemplo
Considere las siguientes tablas.
columna 1 | columna 2 | columna 1 | columna 2 | |
---|---|---|---|---|
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
A ∪ B da
columna 1 | columna 2 |
---|---|
1 | 1 |
1 | 2 |
1 | 3 |
Establecer diferencia (-)
– El símbolo lo denota. El resultado de A – B, es una relación que incluye todas las tuplas que están en A pero no en B.
- El nombre del atributo de A debe coincidir con el nombre del atributo de B.
- Las relaciones de dos operandos A y B deben ser compatibles o compatibles con la unión.
- Se debe definir una relación formada por las tuplas que están en la relación A, pero no en B.
Ejemplo
A-B
columna 1 | columna 2 |
---|---|
1 | 2 |
Intersección
Una intersección está definida por el símbolo ∩
A∩B
Define una relación que consta de un conjunto de todas las tuplas que están tanto en A como en B. Sin embargo, A y B deben ser compatibles con la unión.
Ejemplo:
A ∩ B
columna 1 | columna 2 |
---|---|
1 | 1 |
Producto cartesiano (X) en DBMS
Producto cartesiano en DBMS es una operación que se utiliza para fusionar columnas de dos relaciones. Generalmente, un producto cartesiano nunca es una operación significativa cuando se realiza sola. Sin embargo, se vuelve significativa cuando se realiza con otras operaciones. También se denomina producto cruzado o unión cruzada.
Ejemplo: producto cartesiano
σ columna 2 = '1' (AXB)
Salida: el ejemplo anterior muestra todas las filas de la relación A y B cuya columna 2 tiene el valor 1
columna 1 | columna 2 |
---|---|
1 | 1 |
1 | 1 |
Recibir newsletter OperaSupuestos de Alcance
La operación de unión es esencialmente un producto cartesiano seguido de un criterio de selección.
Operación de unión denotada por ⋈.
La operación JOIN también permite unir tuplas relacionadas de distintas relaciones.
Tipos de UNIRSE:
Las distintas formas de realizar una operación de unión son:
Uniones internas:
- Theta unirse
- Únete a EQUI
- Unión natural
Unión exterior:
- Izquierda combinación externa
- Unión exterior derecha
- Unión externa completa
Unir internamente
En una unión interna, sólo se incluyen aquellas tuplas que satisfacen los criterios de coincidencia, mientras que el resto se excluye. Estudiemos varios tipos de uniones internas:
Unión theta
El caso general de la operación JOIN se denomina unión Theta. Se denota con el símbolo θ
Ejemplo
A ⋈θ B
Theta join puede utilizar cualquier condición en los criterios de selección.
Por ejemplo:
A ⋈ A.column 2 > B.column 2 (B)
columna 1 | columna 2 |
---|---|
1 | 2 |
Únete a EQUI
Cuando una unión theta utiliza solo una condición de equivalencia, se convierte en una unión equi.
Por ejemplo:
A ⋈ A.column 2 = B.column 2 (B)
columna 1 | columna 2 |
---|---|
1 | 1 |
La unión EQUI es una de las operaciones más difíciles de implementar de manera eficiente usando SQL en un RDBMS y una de las razones por las que RDBMS tienen problemas esenciales de rendimiento.
UNIÓN NATURAL (⋈)
La unión natural sólo se puede realizar si existe un atributo (columna) común entre las relaciones. El nombre y el tipo del atributo deben ser los mismos.
Ejemplo
Considere las dos tablas siguientes
num | Cuadrada |
---|---|
2 | 4 |
3 | 9 |
num | Cubo |
---|---|
2 | 8 |
3 | 27 |
C ⋈ D
num | Cuadrada | Cubo |
---|---|---|
2 | 4 | 8 |
3 | 9 | 27 |
ÚNETE EXTERIOR
En una combinación externa, junto con las tuplas que satisfacen los criterios coincidentes, también incluimos algunas o todas las tuplas que no coinciden con los criterios.
Unión exterior izquierda (A ⟕ B)
En la unión externa izquierda, la operación permite conservar todas las tuplas en la relación izquierda. Sin embargo, si no se encuentra ninguna tupla coincidente en la relación derecha, los atributos de la relación derecha en el resultado de la unión se completan con valores nulos.
Considere las siguientes 2 tablas
num | Cuadrada |
---|---|
2 | 4 |
3 | 9 |
4 | 16 |
num | Cubo |
---|---|
2 | 8 |
3 | 18 |
5 | 75 |
AB
num | Cuadrada | Cubo |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | – |
Unión exterior derecha (A ⟖ B)
En la unión externa derecha, la operación permite mantener todas las tuplas en la relación derecha. Sin embargo, si no se encuentra ninguna tupla coincidente en la relación izquierda, los atributos de la relación izquierda en el resultado de la unión se completan con valores nulos.
AB
num | Cubo | Cuadrada |
---|---|---|
2 | 8 | 4 |
3 | 18 | 9 |
5 | 75 | – |
Unión externa completa (A ⟗ B)
En una unión externa completa, todas las tuplas de ambas relaciones se incluyen en el resultado, independientemente de la condición de coincidencia.
AB
num | Cubo | Cuadrada |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | – |
5 | – | 75 |
Resumen
Operación(Símbolos) | Propósito |
---|---|
Seleccionar(σ) | La operación SELECT se utiliza para seleccionar un subconjunto de las tuplas según una condición de selección dada. |
Proyección (π) | La proyección elimina todos los atributos de la relación de entrada excepto los mencionados en la lista de proyecciones. |
Union Operación(∪) | LA UNIÓN está simbolizada por un símbolo. Incluye todas las tuplas que están en las tablas A o B. |
Establecer diferencia(-) | – El símbolo lo denota. El resultado de A – B, es una relación que incluye todas las tuplas que están en A pero no en B. |
Intersección(∩) | La intersección define una relación que consta de un conjunto de todas las tuplas que están tanto en A como en B. |
Producto cartesiano(X) | La operación cartesiana es útil para fusionar columnas de dos relaciones. |
Unir internamente | La unión interna incluye solo aquellas tuplas que satisfacen los criterios de coincidencia. |
Unión theta(θ) | El caso general de la operación JOIN se denomina unión Theta y se denota con el símbolo θ. |
Únete a EQUI | Cuando una unión theta utiliza solo una condición de equivalencia, se convierte en una unión equi. |
Unión natural(⋈) | La unión natural sólo se puede realizar si existe un atributo (columna) común entre las relaciones. |
Unión externa | En una unión externa, junto con tuplas que satisfacen los criterios de coincidencia. |
Izquierda combinación externa( |
En la unión externa izquierda, la operación permite mantener todas las tuplas en la relación izquierda. |
Unión exterior derecha ( |
En la unión externa derecha, la operación permite mantener todas las tuplas en la relación correcta. |
Unión externa completa ( |
En una unión externa completa, todas las tuplas de ambas relaciones se incluyen en el resultado independientemente de la condición de coincidencia. |