algebra relacional

7
Universidad Nacional del Centro del Perú Facultad de Ingeniería de Sistemas Algebra Relacional Curso: Modelamiento de Base de Datos (075B) Docente: M.Sc. Saúl Arauco Esquivel

Upload: davidrayder

Post on 17-Jan-2016

271 views

Category:

Documents


1 download

DESCRIPTION

Algebra Relacional

TRANSCRIPT

Page 2: Algebra Relacional

Objetivos: Aplicar algebra relacional para realizar las operaciones procedimental con tablas, de manera similar a las operaciones del algebra común.

1. ALGEBRA RELACIONAL.- El algebra relacional es un lenguaje de consulta formal procedimental, definida por operadores que funcional sobre tablas.Las operaciones fundamentales en el algebra relacional son: seleccionar, proyectar, producto cartesiano, renombrar, unión, y diferencia de conjuntos. Además de las operaciones fundamentales existen otra operaciones como son la Intersección de conjuntos, producto natural, división y asignación.

2. Operaciones FundamentalesLas operaciones seleccionar, proyectar, y renombrar, son denominadas operaciones unitarias, ya que operan sobre una tabla. Las otras operaciones operan sobre pares de relaciones y, por lo tanto se llaman operaciones binarias.

Operación Símbolo1 Proyección 2 Selección 3 Diferencia exige compatibilidad -4 Division ÷4 Producto Cartesiano X o *5 Interseccion exige compatibilidad 6 Reunion

a) Union exige compatibilidad b) Join natural (join o inner join) < >c) Left join <d) Right join >

2.1 Seleccionar (σpredicado(R)).- Es un operador unario, se define como una relación con los mismos atributos que R contiene, solo que aquellas filas de R deben de satisfacer la condición especificada (predicado)

2.2 Unión(R U S).- La unión de dos relaciones R y S, es otra relación que contiene las tuplas que están en R, o en S, o en ambas, eliminándose las tuplas duplicadas. R y S deben ser unión – compatible, es decir, definidas sobre el mismo conjunto de atributos, ejemplo.

Page 3: Algebra Relacional

2.3 Diferencia (R- S).-La diferencia de dos relaciones R y S, es otra relación que contiene las tuplas que están en la relación R, pero no están en S. R y S deben ser unión – compatible.

2.4 Producto Cartesiano(R x S).- Se define como una relación que es la concatenación de cada una de las filas de la relación R con cada una de las filas de la relación S.

2.5 Proyectar (π col1, col2, coln(R)).- Es un operador unário, se define como una relación que contiene un subconjuntos vertical de R con los valores de los atributos especificados, eliminando filas duplicadas en el resultado.

Page 4: Algebra Relacional

2.6 Intersección(R ᴖ S).- Define uma relación que contiene el conjunto de todas las filas que están tanto en la relación R como en S. R y S deben ser unión – compatible, la equivalencia con operadores básicos.R ᴖ S = R – (R- S)

2.7 División o Cociente(R/S).-Define una relación sobre el conjunto de atributos C, incluido en la relación R, y que contiene el conjunto de valores de C, que en las tuplas de R están combinadas con cada una de las tuplas de S- Condiciones

grado(R) > grado (S) conjunto atributos de S C conjunto de atributos de R Equivalencia con operadores básicos

2.8 Join Natural (R*S).-

El resultado es una relación con los atributos de ambas relaciones y se obtiene combinando las tuplas de ambas relaciones que tengan el mismo valor en los atributos comunes. Normalmente la operación de join se realiza entre los atributos comunes de dos tablas que corresponden a la clave primaria de una tabla y la clave foránea correspondiente de la otra tabla.

Page 5: Algebra Relacional

- Método Se realiza el producto cartesiano R x S Se seleccionan aquellas filas del producto cartesiano para las que

los atributos comunes tengan el mismo valor Se elimina del resultado una ocurrencia (columna) de cada uno

de los atributos comunes Equivalencia con operadores básicos

2.8.1 Join.- Outer JoinEs una variante del Join en la que se intenta mantener toda la información de los operandos, incluso para aquellas filas que no participan en el Join. Se “rellenan con nulos” las tuplas que no tienen correspondencia en el Join.

Tres varianteso Left .- se tienen en cuenta todas las filas del primer operandoo Right.- se tienen en cuenta todas las filas del segundo operandoo Full.- se tienen en cuenta todas las filas de ambos operandos

Problemas de Aplicación del Algebra Relacional

Ejemplo de Aplicación.-

Page 6: Algebra Relacional

a) Obtener los apellidos y teléfono de los alumnos de nombre Rosab) Obtener las notas obtenidas en la asignatura de Inglésc) Obtener los alumnos que figuren matriculados en todas las asignaturasd) Obtener los alumnos que figuren matriculados en las asignaturas de Inglés y Dibujoe) Obtener los alumnos que no han suspendido ninguna asignatura