Sie sind auf Seite 1von 16

UNIDAD 5 ALGEBRA RELACIONAL

5.1 Operaciones fundamentales del algebra relacional. 5.2 Otras operaciones del algebra relacional. 5.3 Algebra relacional extendida. 5.4 Valores nulos. 5.5 Operaciones de modificacin a la base de datos.

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

El Modelo Relacional .
El modelo relacional, como todo modelo de datos, tiene que ver con tres aspectos de los datos: Estructura de datos. Integridad de datos. Manejo de datos.

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

3.2 lgebra Relacional. El lgebra relacional es un lenguaje formal con una serie de operadores que trabajan sobre una o varias relaciones para obtener otra relacin resultado, sin que cambien las relaciones originales. Tanto los operandos como los resultados son relaciones, por lo que la salida de una operacin puede ser la entrada de otra operacin. Esto permite anidar expresiones del lgebra, del mismo modo que se pueden anidar las expresiones aritmticas. A esta propiedad se le denomina clausura: las relaciones son cerradas bajo el lgebra, del mismo modo que los nmeros son cerrados bajo las operaciones aritmticas.
Ing. Mara Guadalupe Njera Lozano Fundamentos de Bases de Datos Enero-Junio 2012

De los ocho operadores, slo hay cinco que son fundamentales: seleccin, proyeccin, producto cartesiano, unin y diferencia, que permiten realizar la mayora de las operaciones de obtencin de datos. Los operadores no fundamentales son la concatenacin (join), la interseccin y la divisin, que se pueden expresar a partir de los cinco operadores fundamentales. La seleccin y la proyeccin son operaciones unarias porque operan sobre una sola relacin. El resto de las operaciones son binarias porque trabajan sobre pares de relaciones. En las definiciones que se presentan a continuacin, se supone que R y S son dos relaciones cuyos atributos son A=(a , a , ..., a ) y B=(b , b , ..., b ) respectivamente.
Ing. Mara Guadalupe Njera Lozano Fundamentos de Bases de Datos Enero-Junio 2012

Seleccin

La seleccin, opera sobre una sola relacin R y da como resultado otra relacin cuyas tuplas son las tuplas de R que satisfacen la condicin especificada. Esta condicin es una comparacin en la que aparece al menos un atributo de R, o una combinacin booleana de varias de estas comparaciones. Se utiliza la letra griega sigma minscula .

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

En general, se permiten las comparaciones que utilizan =, , <, , > o en el predicado de seleccin. Adems, se pueden combinar varios predicados en uno mayor utilizando las conectivas y () y o ().

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

Por tanto,para seleccionar las tuplas de la relacin prstamo en que la sucursal es Banco X hay que escribir: nombre-sucursal = Banco X (prstamo) Se pueden buscar todas las tuplas en las que el importe prestado sea mayor que 1,200 escribiendo: importe>1,200 (prstamo) Para encontrar las tuplas correspondientes a prstamos de ms de 1.200 concedidos por la sucursal de Banco X, se escribe: nombre-sucursal = Navacerrada importe>1200 (prstamo)

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

Proyeccin La proyeccin opera sobre una sola relacin R y da como resultado otra relacin que contiene un subconjunto vertical de R, extrayendo los valores de los atributos especificados y eliminando duplicados. Se utiliza la letra mayuscula griega . Ejemplo: La consulta para crear una lista de todos los nmeros de prstamo y del importe de los mismos puede escribirse como: nmero-prstamo, importe (prstamo)

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

Producto Cartesiano

El producto cartesiano obtiene una relacin cuyas tuplas estn formadas por la concatenacin de todas las tuplas de R con todas las tuplas de S.
La restriccin y la proyeccin son operaciones que permiten extraer informacin de una sola relacin. Habr casos en que sea necesario combinar la informacin de varias relaciones. El producto cartesiano ``multiplica" dos relaciones, definiendo una nueva relacin que tiene todos los pares posibles de tuplas de las dos relaciones. Si la relacin R tiene tuplas y atributos y la relacin S tiene tuplas y atributos, la relacin resultado tendr tuplas y atributos. Ya que es posible que haya atributos con el mismo nombre en las dos relaciones, el nombre de la relacin se antepondr al del atributo en este caso para que los nombres de los atributos sigan siendo nicos en la relacin resultado. Simbolo utilizado (X).
Ing. Mara Guadalupe Njera Lozano Fundamentos de Bases de Datos Enero-Junio 2012

Ejemplo: Supngase que se desea averiguar los nombres de todos los clientes que tienen concedido un prstamo en la sucursal de Navacerrada. Se escribe:
nombre-sucursal = Navacerrada (prestatario prstamo)

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

Unin
La unin de dos relaciones R y S, con y tuplas respectivamente, es otra relacin que tiene como mucho tuplas siendo stas las tuplas que se encuentran en R o en S o en ambas relaciones a la vez. Para poder realizar esta operacin, R y S deben ser compatibles para la unin. Se dice que dos relaciones son compatibles para la unin si ambas tienen la misma cabecera, es decir, si tienen el mismo nmero de atributos y stos se encuentran definidos sobre los mismos dominios. En muchas ocasiones ser necesario realizar proyecciones para hacer que dos relaciones sean compatibles para la unin. Simbolo . Ejemplo: Mostrar todos los nombres de clientes que aparecen en alguna de las dos relaciones o en ambas. nombre-cliente (prestatario) U nombre-cliente (impositor)

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

una operacin unin r U s sea vlida hay que exigir que se cumplan dos condiciones: 1. Las relaciones r y s deben ser de la misma aridad. Es decir, deben tener el mismo nmero de atributos. 2. Los dominios de los atributos i-simos de r y de s deben ser iguales para todo i.
Ing. Mara Guadalupe Njera Lozano Fundamentos de Bases de Datos Enero-Junio 2012

Diferencia

La diferencia obtiene una relacin que tiene las tuplas que se encuentran en r y no se encuentran en s. Para realizar esta operacin, r y s deben ser compatibles para la unin. Simbolo utilizado (-).
Ejemplo: Se pueden buscar todos los clientes del banco que tienen abierta una cuenta pero no tienen concedido ningn prstamo escribiendo
nombre-cliente (impositor) nombre-cliente (prestatario)
Fundamentos de Bases de Datos Ing. Mara Guadalupe Njera Lozano Enero-Junio 2012

Lenguajes procedimentales
En los lenguajes procedimentales el usuario instruye al sistema para que lleve a cabo una serie de operaciones en la base de datos para calcular el resultado deseado. En los lenguajes no procedimentales el usuario describe la informacin deseada sin dar un procedimiento concreto para obtener esa informacin.
Ing. Mara Guadalupe Njera Lozano Fundamentos de Bases de Datos Enero-Junio 2012

La mayor parte de los sistemas comerciales de bases de datos relacionales ofrecen un lenguaje de consulta que incluye elementos de los enfoques procedimental y no procedimental. los lenguajes puros: el lgebra relacional es procedimental, mientras que el clculo relacional de tuplas y el de dominios son no procedimentales.

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012

Bibliografa
Fundamentos de Bases de Datos Abraham Silberschatz, Henry F. Korth, S. Sudarshan, Quinta edicin, Editorial McGraw Hill.

Ing. Mara Guadalupe Njera Lozano

Fundamentos de Bases de Datos

Enero-Junio 2012