Álgebra relacional: operaciones fundamentales, sintaxis y ejemplos para bases de datos
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 5,11 KB
Álgebra relacional: operaciones fundamentales
El álgebra relacional es un lenguaje de consulta procedural que consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación. Las operaciones fundamentales del álgebra relacional son: selección, proyección, unión, diferencia de conjuntos, producto cartesiano y renombramiento.
Clasificación de las operaciones
Las operaciones del álgebra relacional pueden agruparse en:
- Operaciones unarias: operan sobre una sola relación. Ejemplos: selección, proyección y renombramiento.
- Operaciones binarias: operan sobre pares de relaciones. Ejemplos: unión, diferencia de conjuntos y producto cartesiano.
Operación: Selección
La operación selección extrae las tuplas que satisfacen un predicado dado. Se utiliza la letra griega sigma minúscula σ para denotar la selección. El predicado aparece como subíndice de σ y la relación argumento se da entre paréntesis a continuación: σ<sub>predicado</sub>(relación).
Por ejemplo, para seleccionar las tuplas de la relación préstamo en que la sucursal es «Navacerrada», se escribe:
σnombre-sucursal = "Navacerrada"(préstamo)
Operación: Proyección
La operación proyección devuelve una relación que contiene solo un subconjunto de los atributos de la relación argumento, es decir, excluye algunos atributos. La proyección se denota por la letra griega mayúscula Π. Se crea una lista de los atributos que se desea que aparezcan en el resultado como subíndice de Π y la relación argumento se escribe entre paréntesis.
Operación: Unión
La operación unión incluye las tuplas que se encuentran en una, otra o en ambas relaciones. Se denota por el símbolo ∪ (ejemplo: r ∪ s). La unión solo se puede aplicar entre relaciones compatibles:
- Las relaciones r1 y r2 deben tener el mismo número de atributos.
- Los dominios del atributo i-ésimo de r1 y del atributo i-ésimo de r2 deben ser los mismos.
En general, se debe asegurar que las uniones se realicen entre relaciones compatibles.
Ejemplo: Unir nombres de clientes con préstamos y con cuentas
Se conoce la manera de averiguar los nombres de todos los clientes con préstamos en el banco:
Πnombre-cliente(prestatario)
También se conoce la manera de averiguar el nombre de los clientes con cuenta en el banco:
Πnombre-cliente(impositor)
Ahora basta con la unión de estos dos conjuntos:
Πnombre-cliente(prestatario) ∪ Πnombre-cliente(impositor)
Operación: Producto cartesiano
El producto cartesiano combina tuplas de dos relaciones para producir pares de tuplas. Se puede usar el producto cartesiano en conjunto con otras operaciones para expresar consultas más complejas. El símbolo del producto cartesiano es ×.
Por ejemplo, si se desea averiguar los nombres de todos los clientes que tienen concedido un préstamo en la sucursal de Navacerrada, se necesita información de las relaciones préstamo y prestatario. Una posible expresión sería:
σnombre-sucursal = "Navacerrada"(prestatario × préstamo)
Operación: Renombramiento
Puede existir ambigüedad cuando se involucra dos veces la misma relación en una expresión de consulta. La operación renombramiento resuelve ese problema. También se puede renombrar el resultado de una expresión. Se usa la letra griega ro minúscula ρ para denotar renombramiento. Produce otra instancia de la relación de entrada pero con el nombre indicado en el subíndice de ρ. No significa un cambio de nombre de la tabla física. Se puede renombrar una relación o uno o varios atributos de una relación.
Operación: Intersección de conjuntos
La operación intersección se denota por el símbolo ∩. Resulta una relación con las tuplas que se encuentran en las dos relaciones r ∩ s. Las relaciones deben ser compatibles (mismas reglas que unión y diferencia).
La intersección puede expresarse mediante la diferencia de conjuntos de la manera siguiente:
r ∩ s = r − (r − s)
Por lo tanto, la intersección de conjuntos no es una operación fundamental necesaria, pero suele ser más conveniente como operación primitiva en expresiones de consulta.
Notas finales
En resumen, el álgebra relacional proporciona un conjunto de operadores formales —algunos primarios y otros derivables— que permiten expresar consultas sobre relaciones de una base de datos. Conocer la sintaxis y las propiedades de estas operaciones facilita la construcción, optimización y comprensión de consultas relacionales.