Sie sind auf Seite 1von 22

INSTITUTO TECNOLOGICO SUPERIOR DE JESUS CARRANZA

INGENIERA EN SISTEMAS COMPUTACIONALES

MATERIA

FUNDAMENTOS DE BASE DE DATOS INVESTIGACION ALGEBRA RELACIONAL I NG . WILBERT HERNANDEZ FERNANDEZ


DOCENTE

PRESENTA

ANTONIO GAYTAN HERNANDEZ


GRUPO

402- A I NG . SISTEMAS COMPUTACIONALES 04 de Junio de 2012


CARRERA

UNIDAD V ALGEBRA RELACIONAL


Tabla de contenido
Introduccin. ............................................................................................................ 2 5.1 Operaciones fundamentales del algebra relacional. .......................................... 2 5.2 Otras operaciones del algebra relacional. ....................................................... 13 5.3 Algebra relacional extendida. .......................................................................... 14 5.4 Valores nulos................................................................................................... 18 5.5 Operaciones de modificacin a la basede datos. ............................................ 20 Conclusin............................................................................................................. 21 Bibliografa. ........................................................................................................... 21

ANTONIO GAYTAN HERNANDEZ

Pgina 2

UNIDAD V ALGEBRA RELACIONAL


En esta unidad del modelo relacional aprenderemos algunas tcnicas de como insertar tablas y columnas en un modelo de bases de datos. El inters de los usuarios de las bases de datos se suele centrar en realizar consultas (contestar a interrogantes sobre la instancia actual de la base de datos). El modelo relacional posee un conjunto concreto de operaciones estndar sobre los datos (a diferencia del modelo E/R que no ofrece una forma especfica de manipular la informacin) Estas operaciones estndar pueden expresarse en un lgebra que se conoce como lgebra relacional.

lgebra Relacional

ANTONIO GAYTAN HERNANDEZ

Pgina 3

UNIDAD V ALGEBRA RELACIONAL


El inters de los usuarios de las bases de datos se suele centrar en realizar consultas (contestar a interrogantes sobre la instancia actual de la base de datos). El modelo relacional posee un conjunto concreto de operaciones estndar sobre los datos (a diferencia del modelo E/R que no ofrece una forma especfica de manipular la informacin) Estas operaciones estndar pueden expresarse en un lgebra que se conoce como lgebra relacional.

Lenguajes de Consulta Un lenguaje de consulta es un lenguaje en el que un usuario solicita informacin de la base de dato. Los lenguajes de consulta de bases de datos suelen ser de un nivel conceptual superiora los lenguajes de programacin habituales. Procedimentales: el usuario instruye al sistema para que lleve a cabo una serie de operaciones para calcular el resultado No procedimentales: el usuario describe la informacin deseada, sin dar un procedimiento para obtenerla. El lgebra relacional es un lenguaje de consulta procedimental que consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relacin (construye nuevas relaciones a partir de relacionas existentes). Expresiones u Operaciones: comienzan con las relaciones como operandos y generan como resultado una relacin (se puede construir expresiones complejas al utilizar como operandos resultados de expresiones del lgebra Relacional). Operaciones lgebra Relacional Las operaciones del lgebra Relacional se pueden clasificar en cuatro clases 1.- Operaciones habituales de los conjuntos (unin, interseccin y diferencia) 2.- Operaciones que suprimen partes de una relacin (la seleccin elimina algunas tuplas y la proyeccin algunas columnas) 3.- Operaciones fundamentales: seleccin, proyeccin, unin, diferencia de conjuntos, producto cartesiano y renombramiento. ANTONIO GAYTAN HERNANDEZ Pgina 4

UNIDAD V ALGEBRA RELACIONAL


Ejemplo 1: Banco

Seleccin La operacin seleccin selecciona tuplas que satisfacen un predicado dado y produce una nueva relacin con un subconjunto de tuplas de la relacin original. Para denotar la seleccin se utiliza la letra griega sigma minscula (). El predicado aparece como subndice de La relacin sobre la que se aplica aparece entre parntesis. Ejemplo 1: Banco Seleccionar las tuplas de la relacin prstamo en las cuales la sucursal es Fingoi

Ejemplo 1: Banco Seleccionar las tuplas en las cuales el importe prestado sea mayor que 9000

ANTONIO GAYTAN HERNANDEZ

Pgina 5

UNIDAD V ALGEBRA RELACIONAL


Se permiten las comparaciones que utilizan =, , <, , >, en el predicado Se pueden combinar varios predicados con las conectivas y() y o() El predicado puede incluir comparaciones entre dos atributos.

Proyeccin La operacin proyeccin selecciona argumentos de una relacin (elimina filas duplicadas) y produce una nueva relacin que contiene algunas de las columnas de la original Para denotar la proyeccin se utiliza la letra griega pi mayscula () Los argumentos aparecen como subndice de . La relacin sobre la que se aplica aparece entre parntesis

Ejemplo 1: Banco Crear una lista de todos los nmeros de prstamo y del importe de los mismos

Composicin de Operaciones Es muy importante el hecho de que el resultado de una operacin relacional es tambin una relacin. Las operaciones del lgebra relacional pueden componerse para formar una

ANTONIO GAYTAN HERNANDEZ

Pgina 6

UNIDAD V ALGEBRA RELACIONAL


expresin compleja del lgebra relacional. Ejemplo 1: Banco Encontrar los clientes que viven en Santiago

Unin La operacin unin une tuplas de dos relaciones (que tengan el mismo nmero de atributos y dominios iguales ->Compatibles) eliminando las tuplas repetidas. Para denotar la unin se utiliza la notacin de conjuntos (U) Las relaciones sobre las que se aplica aparecen a los lados del operador. Define una relacin lgica OR.

Ejemplo 1: Banco Averiguar el nombre de todos los clientes del banco que tienen una cuenta, un prstamo o ambas cosas.

ANTONIO GAYTAN HERNANDEZ

Pgina 7

UNIDAD V ALGEBRA RELACIONAL

Diferencia de Conjuntos La operacin diferencia de conjuntos selecciona tuplas de dos relaciones que estn en una pero que no estn en la otra (que tengan el mismo nmero de atributos y dominios iguales ->Compatibles) Para denotar la diferencia de conjuntos se utiliza la notacin de matemticas (-). Las relaciones sobre las que se aplica aparecen a los lados del operador

Ejemplo 1: Banco Buscar todos los clientes del banco que tienen abierta una cuenta pero no tienen concedido.

ANTONIO GAYTAN HERNANDEZ

Pgina 8

UNIDAD V ALGEBRA RELACIONAL

Producto Cartesiano La operacin producto cartesiano, o producto, combina tuplas de dos relaciones formando nuevas tuplas que tienen como primera parte una tupla de una relacin y como segunda parte una tupla de la otra relacin. Para denotar el producto cartesiano se utiliza la notacin de matemticas (X). Las relaciones sobre las que se aplica aparecen a los lados del operador. Define una relacin lgica AND

Nombres de Atributos Al combinar dos relaciones puede ocurrir que atributos pertenecientes a ambas relaciones tengan el mismo nombre. Esquema_prestatario=(nombre_cliente, numero_prestamo) Esquema_prestamo=(numero_prestamo, nombre_sucursal, importe) Esquema_r [=prestatarioxprestamo] =(prestatario.nombre_cliente, prestatario.nmero_prestamo, prestamo.numero_prestamo,

ANTONIO GAYTAN HERNANDEZ

Pgina 9

UNIDAD V ALGEBRA RELACIONAL


prestamo.nombre_sucursal, prestamo.importe) Tuplas del Prod. Cart. Se crea una tupla en el Producto Cartesiano a partir de cada posible par de tuplas de las relaciones que participan -> La relacin procedente del Producto Cartesiano suele ser de gran tamao.

Ejemplo 1: Banco Averiguar los nombres de todos los clientes que tienen concedido un prstamo en la Sucursal de Fingoi.

Ejemplo 1: Banco

ANTONIO GAYTAN HERNANDEZ

Pgina 10

UNIDAD V ALGEBRA RELACIONAL

prestatario x prstamo Seleccionamos en el resultado del producto cartesiano las tuplas cuyo valor en Nombre_sucursal sea el que se busca

Filtramos el resultado a travs del nmero de prstamo

ANTONIO GAYTAN HERNANDEZ

Pgina 11

UNIDAD V ALGEBRA RELACIONAL

Y proyectamos el resultado buscado

Renombramiento La operacin renombramiento permite poner nombre a una relacin (obtenida a travs de una expresin) que no lo tenga.Para denotar la proyeccin se utiliza la letra griega rho minscula () (tambin la partcula as en una lista de argumentos).El nombre a dar a la relacin aparece como subndice de y el nombre a dar a los atributos como argumentos. La expresin sobre la que se aplica aparece entre parntesis

ANTONIO GAYTAN HERNANDEZ

Pgina 12

UNIDAD V ALGEBRA RELACIONAL

Las operaciones fundamentales del lgebra relacional son suficientes para expresar cualquier consulta del lgebra relacional. Operaciones que no aaden potencial al lgebra pero que simplifican la expresin de las consultas.Tienen una expresin equivalente usando slo las operaciones fundamentales. Interseccin

Reunin Natural Cuando se utiliza el producto cartesiano, se suele reducir forzando que los argumentos con Contenidos iguales tengan valores iguales.

Reunin Theta

Asignacin La operacin asignacin acta de forma similar a la asignacin en los lenguajes de programacin.

El resultado de la expresin de la derecha de <- se asigna a la variable relacin situada a la izquierda de <-

ANTONIO GAYTAN HERNANDEZ

Pgina 13

UNIDAD V ALGEBRA RELACIONAL

Proyeccin Generalizada La operacin proyeccin generalizada ampla la operacin proyeccin permitiendo que se utilicen funciones aritmticas en la lista de argumentos.

EJEMPLO 1 Averiguar el importe de crdito disponible para cada lnea de crdito activa (lmite de crdito: 25000).

Funciones de Agregacin Las funciones de agregacin toman como entrada una coleccin de valores y devuelven como resultado un valor resumen Se representa por la G caligrfica: G

ANTONIO GAYTAN HERNANDEZ

Pgina 14

UNIDAD V ALGEBRA RELACIONAL

Averiguar la suma total de los sueldos de los empleados del banco

Averiguar nmero de sucursales en los que hay al menos un empleado a tiempo parcial

Hallar la suma total de sueldos de los empleados a tiempo parcial por sucursal

ANTONIO GAYTAN HERNANDEZ

Pgina 15

UNIDAD V ALGEBRA RELACIONAL

Reunin Externa La operacin reunin externa es una ampliacin de la operacin reunin para trabajar con informacin ausente (desconocida, no relevante, ) Generar una nica relacin que contenga toda la informacin de los empleados (calle, ciudad, sucursal y sueldo).

Reunin Natural Generar una nica relacin que contenga toda la informacin de los empleados (calle, ciudad, sucursal y sueldo)

ANTONIO GAYTAN HERNANDEZ

Pgina 16

UNIDAD V ALGEBRA RELACIONAL

Reunin Externa Izquierda La reunin externa por la izquierda toma todas las tuplas de la relacin de la izquierda que no coincidan con ninguna tupla de la relacin de la derecha, las rellana con valores nulos en los dems atributos de la relacin de la derecha y las aade al resultado de la reunin natural.

Reunin Externa Derecha La reunin externa por la derecha toma todas las tuplas de la relacin de la derecha que no coincidan con ninguna tupla de la relacin de la izquierda, las rellana con valores nulos en los dems atributos de la relacin de la izquierda y las aade al resultado de la reunin natural.

Reunin Externa Completa La reunin externa completa realiza las operaciones de la reunin externa por la izquierda y de la reunin externa por la derecha

ANTONIO GAYTAN HERNANDEZ

Pgina 17

UNIDAD V ALGEBRA RELACIONAL

Modificaciones a las bases de datos Las modificaciones de la Base de Datos se expresan utilizando la operacin de asignacin Las principales operaciones de modificacin de una Base de Datos son el Borrado, la Insercin y la Actualizacin

Es necesario analizar la forma en la que las operaciones del lgebra relacional manejan los valores nulos (y las complicaciones que surgen). Las operaciones y comparaciones con valores nulos se deberan evitar siempre que sea posible. Valor nulo: Valor desconocido o no existente.

Operaciones Aritmticas Dado que el valor especial nulo indica valor desconocido o no existente, cualquier operacin aritmtica (como +, -, * y /) que incluya valores nulos debe devolver un valor nulo.

Comparaciones Cualquier comparacin (como <, <=, >, >=, = y ) que incluya un valor nulo se evala al valor especial desconocido Como no se puede decir si el resultado de la comparacin es cierto o falso, se dice que el resultado es un nuevo valor lgico

ANTONIO GAYTAN HERNANDEZ

Pgina 18

UNIDAD V ALGEBRA RELACIONAL


denominado desconocido.

Seleccin La operacin seleccin evala el predicado P en P(E) sobre cada tupla de E Si el predicado devuelve el valor cierto, se aade la tupla al resultado Si el predicado devuelve desconocido o falso, la tupla no se aade al resultado

Proyeccin La operacin proyeccin trata los nulos como cualquier otro valor al eliminar duplicados. La decisin es un tanto arbitraria porque sin saber cul es el valor real no se sabe si los dos valores nulos son duplicados o no. Unin, Intersec., Diferencia La unin, interseccin y diferencia tratan los valores nulos de la misma forma que la operacin proyeccin. El comportamiento es un tanto arbitrario, especialmente en el caso de la interseccin y la diferencia, dado que no se sabe si los valores reales (si existen) representados por los nulos son los mismos Reunin Las reuniones se pueden expresar como un producto cartesiano seguido de una seleccin. La definicin de la forma en la cual la seleccin trata los nulos tambin define la forma en que la operacin reunin trata los nulos. En una reunin natural, si dos tuplas tienen valor nulo en el atribu

ANTONIO GAYTAN HERNANDEZ

Pgina 19

UNIDAD V ALGEBRA RELACIONAL

Insercin Para insertar datos en una relacin, se especifca la tupla que se desea insertar o bien se formula una consulta cuyo resultado sea el conjunto de tuplas que se desea insertar. La instruccin para hacer una insercin tiene la siguiente sintaxis: INSERT INTO R(a1; :::; an) VALUES (v1; :::vn); Ejemplo: INSERT INTO cuenta VALUES (null, 'C-401', 24000); SELECT num_cuenta FROM cuenta WHERE nombreSucursal = 'San Angel'; Supresin Si se desea eliminar una tupla de una relacin debe usarse la instruccin: DELETE FROM R WHERE condicion; Ejemplo DELETE FROM cuenta WHERE nombreSucursal IN (SELECT nombreSucursal FROM sucursal WHERE ciudad = 'Cuernavaca'); Actualizacin Si solo se desea modificar el valor de ciertos campos, se puede utilizar la instruccin de actualizacin cuya sintaxis es: UPDATE R SET valores WHERE condicin;

ANTONIO GAYTAN HERNANDEZ

Pgina 20

UNIDAD V ALGEBRA RELACIONAL


La presente unidad tiene como finalidad reforzar los conocimientos adquiridos, ya que las unidades anteriores fueron la base para la compresin.

ANTONIO GAYTAN HERNANDEZ

Pgina 21

UNIDAD V ALGEBRA RELACIONAL

http://sites.google.com/site/fundamentosdedbitst/contenido/5-5-operaciones-demodificaciones-a-la-base-de-datos

ANTONIO GAYTAN HERNANDEZ

Pgina 22

Das könnte Ihnen auch gefallen