Álgebra relacional-unidad5

17
OPERACIONES FUNDAMENTALES DEL ALGEBRA RELACIONAL OTRAS OPERACIONES DEL ALGEBRA RELACIONAL ALGEBRA RELACIONAL EXTENDIDA INGENIERIA EN SISTEMAS

Upload: dulce-hernandez

Post on 21-Jul-2015

359 views

Category:

Documents


0 download

TRANSCRIPT

FUNDAMENTOS DE BASES DE DATOSTEMA: ALGEBRA RELACIONAL OPERACIONES FUNDAMENTALES DEL ALGEBRA RELACIONAL OTRAS OPERACIONES DEL ALGEBRA RELACIONAL ALGEBRA RELACIONAL EXTENDIDA

INGENIERIA EN SISTEMAS

lgebra RelacionalEl 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 superior a 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 RelacionalLas 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.

Ejemplo 1: Banco

SeleccinLa 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

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.

ProyeccinLa 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 OperacionesEs 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 expresin compleja del lgebra relacional. Ejemplo 1: Banco Encontrar los clientes que viven en Santiago

UninLa 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.

Diferencia de ConjuntosLa 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.

Producto CartesianoLa 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 AtributosAl 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, 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 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

Y proyectamos el resultado buscado

RenombramientoLa 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

5.2 Otras operaciones del algebra linealLas 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 NaturalCuando se utiliza el producto cartesiano, se suele reducir forzando que los argumentos con Contenidos iguales tengan valores iguales.

Reunin Theta

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

5.3 Algebra relacional extendidaProyeccin GeneralizadaLa 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 AgregacinLas funciones de agregacin toman como entrada una coleccin de valores y devuelven como resultado un valor resumen Se representa por la G caligrfica: G

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

Reunin ExternaLa 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 NaturalGenerar una nica relacin que contenga toda la informacin de los empleados (calle, ciudad, sucursal y sueldo)

Reunin Externa IzquierdaLa 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 DerechaLa 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 CompletaLa reunin externa completa realiza las operaciones de la reunin externa por la izquierda y de la reunin externa por la derecha

Modificaciones a las bases de datosLas 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

Bibliografa/fundamentosdedbitst/contenido/5-3-algebra-relacional-extendida. (s.f.). Recuperado el 28 de 05 de 2012, de https://sites.google.com/site/fundamentosdedbitst/contenido/5-3-algebra-relacionalextendida fundamentosdedbitst/contenido/5-1-operaciones-fundamentales-del-algebra-lineal. (s.f.). Recuperado el 28 de 05 de 2012, de https://sites.google.com/site/fundamentosdedbitst/contenido/5-1-operaciones-fundamentalesdel-algebra-lineal fundamentosdedbitst/contenido/5-2-otras-operaciones-del-algebra-lineal. (s.f.). Recuperado el 28 de 05 de 2012, de https://sites.google.com/site/fundamentosdedbitst/contenido/5-2-otrasoperaciones-del-algebra-lineal