Está en la página 1de 7

Instituto Técnico Superior Comunitario

(ITSC)

Nombre:
Rosaly Dorali

Apellido:
Muñoz Rodríguez

Matrícula:
2020-0563

Carrera:
Soporte Informático

Materia:
Fundamentos de Base de Datos 105

Sección:
01

Maestro:
Luis Bessewell Féliz

Tema:
Álgebra Relacional en las Bases de Datos

Fecha:
Viernes 23 Oct. 2020
Álgebra Relacional en las Bases de Datos
El álgebra relacional es un conjunto de operaciones que describen el paso a paso como
computar un a respuesta sobre las relaciones, tal y como están definidas en el modelo
relacional. Denominada de tipo procedimental, a diferencia de calculo relacional que es de tipo
declarativo.

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, sirven para obtener una versión más optimizada y eficiente de dicha consulta.

El álgebra relacional es un lenguaje teórico con operaciones que se aplican a una o más
relaciones, con el fin de definir otra relación sin modificar las relaciones, con el fin de definir
otra relación, sin modificar las relaciones originales.

5.1 Operaciones Fundamentales del Algebra Relacional


El conjunto de operaciones para manipular las tuplas de las relaciones o tablas y el resultado
de cada operación es una nueva relación que podemos manipular posteriormente.

Operaciones son:

• Seleccionar (σ): Permite seleccionar un subconjunto de tuplas de una relación (R),


todas aquellas que cumplan las condiciones (P), quiere decir que: σp(R)

Ejemplo:
σ Apellido=Gómez(Alumnos)

Selecciona todas las tuplas que contengan Gómez como apellido en la relación
Alumnos.

Una condición puede ser una combinación booleana, donde se pueden usar operadores
como: ^, ˅, como combinaciones de operadores ≤, ≥, ˂, ˃, =, ≠.

• Proyectar (π): Permite extraer columnas (Atributos) de una relación, dando como
resultado un subconjunto vertical de atributos de la relación, esto es: π𝑨 𝟏, 𝑨𝟐, … , 𝑨𝒏

Donde A 1, 𝐴2, … , 𝐴𝑛, son los atributos de la relación R

Ejemplo:
π Apellidos,Semestres,Numeros_Control(Alumnos)

Selecciona los atributos Apellidos, Semestre y Numero_Control de la relación


Alumnos, mostrados como un subconjunto de la relación Alumnos.
• Producto cartesiano (x): El producto cartesiano de dos relaciones se escriben como: R
xS

Y entrega una relación, cuyo esquema corresponde a una combinación de todas las
tuplas de R con cada una de las tuplas de S, y sus atributos corresponden a los de R
seguidos por los de S.

Ejemplo: Alumnos x Maestros

Muestra una relación, cuyo esquema contiene cada una de las tuplas de la relación
Alumnos junto con las tuplas de la relación Maestro, mostrando primero los atributos
de la relación Alumnos por las tuplas de la relación Maestro.

• Unión (∪): Produce el conjunto de todas las tuplas que pertenecen ya sea a R o a S o a
ambas. Al igual que en la teoría de conjuntos de símbolos ∪ representa aquí la unión de
dos relaciones.
Es decir: R ∪ S.

R y S deben ser uniones compatibles

• Diferencia (-): La diferencia de dos relaciones, R y S enfatiza por: R – S

Entrega todas aquellas tuplas que están en R, pero no en S. R y S deben ser uniones
compatibles. Estas operaciones pueden ser omitidas sin que con ellos se pierda
información.

5.2 Otras Operaciones del Algebra Relacional

▪ Intersección (∩): La operación de intersección permite identificar filas que son


comunes en dos relaciones. Supongamos que tenemos una tabla de empleados y otra
tabla de los asistentes que realizado un curso de inglés (los asistentes pueden ser
empleados o gente de la calle). Queremos crear una figura virtual en la tabla denominada
“Empleados que hablan Inglés”, esta figura podemos crearla realizando una intersección
de empleados y curso de inglés, los elementos que existan en ambas tablas serán
aquellos empleados que han asistido al curso.

La intersección de dos relaciones se puede especificar en función de otros operadores


básicos:
R ∩ S = R- (R - S)

La intersección, como en teoría de conjuntos, corresponde al conjunto de todas las tuplas


que están en R y S, siendo R y S uniones compatibles.
▪ Reunión o JOIN (|X|): La reunión se utiliza para recuperar datos a través de varias
tablas conectadas unas con otras mediante cláusulas JOIN, en cualquiera de sus tres
variantes INNER, LEFT, RIGHT. La operación reunión se puede combinar con las
operaciones selección y proyección.

Un ejemplo de es conseguir los pedidos que nos han realizado los clientes nacionales
cuyo importe supere 15,000 unidades de producto, generando un informe con el nombre
del cliente y el código del pedido. En este caso se da por supuesto que la tabla clientes
es diferente a la tabla pedidos y que hay que conectar ambas mediante, en este caso
INNER JOIN.

▪ División: La operación división es la contraria a la operación producto y puede llegar a


ser compleja.

Ejemplo: una determinada empresa posee una tabla de comerciales, otra tabla de
productos y otra con las ventas de los comerciales. Queremos averiguar qué comerciales
han vendido todo tipo de producto.

Lo primero que hacemos es extraer en una tabla todos los códigos de todos los
productos, a esa tabla la denominamos
A.Tabla
ACódigo Producto
1035
2241
2249
2518

En la segunda tabla extraemos, de la tabla de ventas, el código del producto y el


comercial de lo que ha vendido, lo haremos con una proyección y evitamos traer valores
duplicados. El resultado puede ser:
Tabla B
Código Comercial Código Producto
10 2241
23 2518
23 1035
39 2518
37 2518
10 2249
23 2249
23 2241

Si dividimos la tabla B entre la tabla A obtendremos somo resultado una tercera tabla
que:
A. Los campos que contiene son aquellos de la tabla B que no existen en la tabla A. En
este caso el campo Código Comercial es el único de la tabla B que no existe en la
tabla A
B. Un registro se encuentra en la tabla resultado si y sólo si está asociado en la tabla B
con cada fila de la tabla A.Tabla Resultado Código, el resultado es 23, ¿por qué? El
comercial 23 es el único de la tabla B que tiene asociados todos los posibles códigos
de producto de la tabla A.

5.3 Algebra Relacional Extendida


Las operaciones básicas de álgebra relacional se han ampliado de varias maneras. Una
ampliación importante es permitir operaciones aritméticas como parte de la proyección. Una
ampliación importante es permitir operaciones de agregación, como el calculo de la suma de
los elementos de un conjunto, o su media. Otra ampliación importante es la operación reunión
externa, que permite a las expresiones del álgebra relacional trabajar con los valores nulos que
modelan la información que falta

1. Proyección generalizada
La proyección generalizada amplía la operación proyección permitiendo que se utilicen
funciones aritméticas en la lista de proyección. La operación proyección generalizada
tiene la forma: π𝑭 𝟏, 𝑭𝟐, … , 𝑭𝒏

Donde E es cualquier expresión algebraica relacional y 𝑭 𝟏, 𝑭𝟐, … , 𝑭𝒏 son expresiones


aritméticas. De forma trivial, la expresión aritmética puede ser simplemente un atributo
o una constante.

2. Funciones de agregación
Las funciones de agregación son funciones que toman una colección de valores y
devuelven como resultado un único valor. Las funciones de agregación más habituales
son: sum (suma), avg (media aritmética), count (número de elementos), min y max
(mínimo y máximo).

3. Reunión externa
La operación reunión externa es una ampliación de la operación reunión para trabajar
con la información que falta. Esta operación tiene tres formas deferentes: reunión
externa por la izquierda (denotada por |X), reunión externa por la derecha (denotada por
X|) y la reunión externa completa (denotada X).

3.1La reunión externa por la izquierda (|X) toma todas la tuplas de la relación de
la izquierda que no coincidan con ninguna tupla de la relación de la derecha, las
rellena con valores nulos en todos los demás atributos de la relación de la
derecha y las añade al resultado de la reunión natural.
3.2La reunión externa por la derecha (X|) es simétrica de la reunión externa por
la izquierda.
3.3La reunión externa completa (X) realiza estas dos operaciones, rellenando las
tuplas de la relación de la izquierda que no coincidan con ninguna tupla de la
relación de la derecha y las tuplas de la relación de la derecha que no coincidan
con ninguna tupla de la relación de la izquierda, y añadiéndolas al resultado de
la reunión.

5.4 Valores Nulos

A menudo hay varias formas de tratar los valores nulos. Las operaciones y las comparaciones
con valores nulos deberían evitar siempre que sea posible. Dado que el valor especial nulo
indica “valor desconocido o no existente”, cualquier operación aritmética que incluya valores
nulos devolverá un valor nulo. De manera similar, cualquier comparación, (como ˂, ˃, _ y, /)
que incluya un valor nulo se evalúa al nuevo valor lógico desconocido. Las operaciones lógicas
tratan los valores desconocidos.

A la hora de efectuar operaciones en el álgebra relacional que impliquen valores nulos, Hay
que tener en cuenta que las operaciones se proyección, unión, intersección y diferencia tratan
los valores nulos en los mismos campos, se tratan como duplicados.

La decisión en un tanto arbitraria porque sin saber cuál es el valor real no se sabe si los dos
valores nulos son duplicados o no. Para las funciones de agregación, hay que tener en cuenta
que cuando hay nulos en los atributos agregados, la operación borra los valores nulos del
resultado antes de aplicar agregación. Si el multiconjunto resultante está vacío, el resultado
agregado será nulo.

5.5 Operaciones de Modificación a la Base de Datos

En este apartado se abordará la manera de insertar, borrar o modificar información de la base


de datos.

Borrado
Las solicitudes de borrado se expresan básicamente igual que las de consulta. Sin embargo, en
lugar de mostrar las tuplas del usuario, se eliminan de las bases de datos las tuplas
seleccionadas. Sólo se pueden borrar tuplas enteras; no se pueden borrar valores de atributos
concretos. En el álgebra relacional los borradores se expresan mediante r r-E, donde r es la
relación y E es una consulta de álgebra relacional.

Intersección
Para insertar datos en una relación hay que especificar la tupla que se va a insertar o escribir
una consulta cuyo resultado sea un conjunto de tuplas que vayan a insertarse. El valor de los
atributos de las tuplas insertadas deben ser miembros del dominio de cada atributo y las tuplas
insertadas deben ser de la clase correcta. En el algebra relacional las inserciones se expresan
mediante r r ∪ E donde r es una relación y E es una consulta de algebra relacional.
Actualización
Puede que, en algunas situaciones, se desee modificar un valor de una tupla sin modificar todos
los valores de la tupla. Se puede utilizar el operador proyección generalizada para realizar esta
tarea: r π𝑭 𝟏, 𝑭𝟐, … , 𝑭𝒏 (r), donde cada Fi es o bien el i-ésimo atributo no está actualizado,
o una expresión que solo implique constantes y los atributos de r, y que del nuevo valor del
atributo.

Si se desea seleccionar varias tuplas de r y solo actualizar esas mismas tuplas, se puede utilizar
la expresión siguiente, donde P denota la condición de selección que escoge las tuplas que hay
que actualizar:
r π𝑭 𝟏, 𝑭𝟐, … , 𝑭𝒏 (σp(r)) ∪ (r - σp(r))

Bibliografía:
https://es.slideshare.net/LuyzMeyner/unidad5-algebra-relacional-yamamayjoseluisj4

También podría gustarte