Está en la página 1de 8

ACTIVIDAD:

U5.A1.- INVESTIGACIÓN

1
ALGEBRA RELACIONAL

En la teoría de bases de datos, el álgebra relacional es una teoría que utiliza


estructuras algebraicas con una semántica bien fundamentada para modelar datos
y definir consultas sobre ellos. La teoría fue presentada por Edgar F. Codd.
La principal aplicación del álgebra relacional es proporcionar una base teórica para
las bases de datos relacionales, en particular los lenguajes de consulta para
dichas bases de datos, entre los que destaca SQL. Las bases de datos
relacionales almacenan datos tabulares representados como relaciones. Las
consultas sobre bases de datos relacionales a menudo también devuelven datos
tabulares representados como relaciones.
El propósito principal del álgebra relacional es definir operadores que transformen
una o más relaciones de entrada en una relación de salida. Dado que estos
operadores aceptan relaciones como entrada y producen relaciones como salida,
pueden combinarse y usarse para expresar consultas potencialmente complejas
que transforman potencialmente muchas relaciones de entrada (cuyos datos se
almacenan en la base de datos) en una sola relación de salida (los resultados de
la consulta).
Describe el aspecto de la manipulación de datos. Estas operaciones se usan como
una representación intermedia de una consulta a una base de datos y, debido a
sus propiedades algebraicas, se usa para para obtener una versión mejor y más
eficiente de dicha consulta.
El álgebra relacional define nueve operaciones: unión, intersección, diferencia y
producto (que vienen de la teoría de conjuntos de la matemática), selección,
proyección, reunión y división (que son las que se aplican específicamente al
modelo de datos relacional) y asignación (operación estándar de los lenguajes de
computación) que le da un valor a un nombre, para la operación de asignación
ocuparemos :=.
La teoría de conjuntos
Unión : Operación del álgebra relacional que crea un conjunto unión de dos
relaciones unión compatible.
Unión compatible: Dos o más relaciones que tienen columnas equivalentes en
número y dominios.
Supongamos que:
VENDEDOR_SUBORDINADO {VENS_ID_VENDEDOR,
VENS_NOMB_VENDEDOR, VENS_ID_JEFE, VENS_OFICINA,

2
VENS_COMISION}
VENDEDOR_JEFE {VENJ_ID_VENDEDOR, VENJ_NOMB_VENDEDOR,
VENJ_ID_JEFE, VENJ_OFICINA, VENJ_COMISION}
Si queremos calcular el conjunto de TODOS los vendedores:
VENDEDOR:= VENDEDOR_SUBORDINADO VENDEDOR_JEFE
Intersección : Operación del álgebra relacional que crea un conjunto
intersección de dos relaciones unión compatible.
Si queremos calcular el conjunto de los vendedores que son jefes y subordinados
a la vez:
VENDEDOR_JEFE_SUBORDINADO:=
VENDEDOR_SUBORDINADO VENDEDOR_JEFE
Diferencia -: Operación del álgebra relacional que crea un conjunto diferencia de
dos relaciones unión compatible. Ojo que la diferencia no es conmutativa.
Si queremos calcular quién (es) son jefe solamente (es decir, quien es el
personaje que está en VENDEDOR_JEFE, pero que no está en
VENDEDOR_SUBORDINADO):
VENDEDOR_JEFE_JEFE:= VENDEDOR_JEFE - VENDEDOR_SUBORDINADO
Producto *: Operación del álgebra relacional que crea el producto cartesiano de
dos relaciones.
Si A {X, Y} tiene los siguientes elementos

3
Ojo que si hacemos el producto cartesiano de dos relaciones que tienen un
atributo en común, vamos a tener un problema con el nombre de la columna, para
ello se recomienda como regla general que el nombre de un atributo está
compuesto por:
1. Una sigla que hace referencia al nombre de la relación
2. Un subrayado
3. El nombre del atributo
Ejemplo:
PRODUCTO {PROD_ID_PROD, PROD_NOMBRE,...}
VENTA {VTA_ID_PROD, VTA_FECHA,...}
Selección: Opera sobre una o más tablas, no siendo necesario que éstas posean
la misma estructura, y devolviendo una nueva tabla cuyo contenido es todas las
filas de las tablas indicadas que satisfacen una cierta condición.
Proyección: Opera sobre una o más tablas, no siendo necesario que éstas
posean la misma estructura, y devolviendo una nueva tabla cuyo contenido es
todas las filas de las tablas indicadas que satisfacen una cierta condición, tal como
sucede con la selección, sólo que la proyección permite indicar cuáles columnas
se desea obtener en el resultado.
Reunión: Opera sobre dos o más tablas, que poseen estructuras diferentes, y
devolviendo una nueva tabla cuyo contenido es un conjunto de filas con las
columnas deseadas provenientes de las diferentes tablas, en el que las filas de las
diferentes tablas en juego son relacionadas mediante alguna condición.
División: Opera sobre dos tablas. Si se divide una tabla B por una tabla A, se
obtiene una nueva tabla cuyas columnas serán aquellas de la tabla B que no
existen en la tabla A, y cuyas filas serán tales que cumplan con estar relacionadas
con todas y cada una de las filas de la tabla A. Este caso es más difícil de
visualizar, pero se puede entender analizando en detalle el siguiente ejemplo:

Asignación: Opera sobre una única tabla, y se utiliza para asignar valores a
algunas columnas de algunas filas de la misma

4
Específicas del álgebra relacional
Selección SELECT: Operación del álgebra relacional que usa una condición para
seleccionar filas de una relación.

Proyección [.]: Operación del álgebra relacional que crea una relación borrando
columnas de una relación existente.

Reunión JOIN: Operación del álgebra relacional que conecta relaciones.

Hay tres casos:

1. Reunión natural: Operación de reunión que conecta relaciones cuando las


columnas comunes tienen iguales valores.
2. Reunión theta: Operación de reunión que conecta relaciones cuando los
valores de determinadas columnas tienen una interrelación específica.
3. Reunión externa: Expansión de la reunión natural que incluye todas las filas
de ambas relaciones.

División /: Operación del álgebra relacional que crea una nueva relación,
seleccionando las filas en una relación que se corresponden con todas las filas en
otra relación.

Operaciones fundamentales de álgebra relacional

 Se usan como una representación intermedia de una consulta a una base


de datos.
 Conjunto de operaciones simples sobre tablas relacionales.
 Consiste básicamente en crear o construir nuevas relaciones a partir de
relaciones existentes.
 Definen, por tanto, un pequeño lenguaje de manipulación de datos.
 Existen operaciones unarias, sobre una sola relación y binarias, se ejecutan
sobre dos relaciones.
 Las operaciones unarias son: ✓Selección. ✓Proyección.
✓Renombramiento.

 Operación Selección.

Selecciona tuplas que satisfacen un predicado dado.

5
Se permiten las comparaciones que usan =, ̸=, o ≥ en el predicado de selección.

Se pueden combinar varios predicados en uno mayor usando las conectivas y (∧),
o (∨) y no (¬).

El predicado de selección puede incluir comparaciones entre dos atributos.

 Operación Proyección.

Permite extraer columnas (atributos) de una relación, dando como resultado un


subconjunto de la relación.

Elimina filas duplicadas

 Operaciones compuestas.

Buscar los nombres de los clientes que viven en Peguerinos

 Operación Renombramiento.

Asigna un nombre a las relaciones que son resultado de las expresiones de


álgebra relacional

También puede aplicarse para cambiar el nombre de una relación y/o sus
atributos.

 Se emplea para seleccionar un subconjunto de las tuplas de una relación que


satisfacen una condición de selección.
 Se puede considerar esta operación como un filtro que mantiene solo las tuplas
que satisfacen la condición establecida.
 Puede visualizarse también como una partición horizontal de la relación.

6
Donde R es una expresión del ´algebra relacional (nombre de una relación,
variable o resultado de operación previa).

Dentro de la condición de selección podemos incorporar distintos tipos de


operadores:

o Operadores relacionales (>, 3


o Operadores lógicos (AND, OR, NOT): x > 3 AND y = ’Hola’
o Paréntesis: (x > 3 AND y = ’Hola’) OR (x ≤ 3 AND y = ’Adiós’)

El objetivo del álgebra relacional es proporcionar un conjunto de operaciones


formales para manipular relaciones (tablas) en una base de datos relacional. El
álgebra relacional se utiliza para realizar consultas y actualizaciones en una base
de datos, y es una herramienta importante para los administradores de bases de
datos y los desarrolladores de software que trabajan con sistemas de gestión de
bases de datos relacionales.

7
REFERENCIAS

Claudio Gutiérrez. (s.f.). Álgebra Relacional. Recuperado el 28 de abril de 2023,


de: https://users.dcc.uchile.cl/~raparede/clases/cc42a/auxAlgRel/auxAlgRel.html
Meneses, E. R. (2020). Clase 9 - Operaciones Básicas de la Base de Datos
Relacionales I Recuperado el 28 de abril de 2023, de:
https://www.uv.mx/personal/ermeneses/files/2020/09/Clase9-
OperacionesBDRelacionales-I_respuestas.pdf
Universidad de Sevilla. Departamento de Ciencias de la Computación e
Inteligencia Artificial. (s.f.). Tema 4: Lenguajes de Consulta en Bases de Datos
Relacionales. Recuperado el 28 de abril de 2023, de:
https://www.cs.us.es/cursos/bd/temas/BD-Tema-4.pdf
Base de Datos Distribuidas. (s.f.). Álgebra relacional. Recuperado el 28 de abril de
2023, de: https://sites.google.com/site/basededatosdistribuidastics/algebra-
relacional
Universidad Autónoma del Estado de Hidalgo. (s.f.). Álgebra relacional.
Recuperado el 28 de abril de 2023, de:
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro14/33_algebra_relacional.
html
Juan Carlos. (s.f.). Álgebra relacional. Recuperado el 28 de abril de 2023, de:
https://ewebik.com/base-de-datos/algebra-relacional

También podría gustarte