El álgebra relacional
Enviado por mishima_walker • 3 de Mayo de 2014 • Trabajo • 2.141 Palabras (9 Páginas) • 274 Visitas
Unidad IV. Algebra relacional.
Algebra relacional
La tercera parte del modelo relacional que está relacionada con la manipulación de los datos, esta dividida en dos partes:
1. El álgebra relacional
2. La operación de asignación.
El álgebra relacional consiste de un conjunto de operadores de alto nivel que operan sobre las relaciones. Estos operadores toman una o dos relaciones de entrada y produce una nueva relación de salida.
Los operadores se pueden definir en dos conjuntos de cuatro operadores originales (Codd):
• Los operadores tradicionales de conjuntos: unión, intersección diferencia y producto cartesiano (todas con ligeras modificaciones, porque operan sobre relaciones y no sobre conjuntos.
• Las operaciones relacionales especiales: restricción, proyección, reunión y división.
Estos ocho operadores originales funcionan como sigue:
UNIÓN. Construye una relación formada por todas las tuplas que existan en cualquiera o en ambas de las relaciones especificadas.
INTERSECCIÓN. Construye una relación formada por aquellas tuplas que aparezcan en las dos relaciones especificadas..
DIFERENCIA. Construye una relación formada por todas las tuplas de la primera relación que no aparezcan en la segunda relación de las dos especificadas.
PRODUCTO. Construye una relación a partir de dos relaciones especificadas, que contiene todas las combinaciones posibles de tuplas,
RESTRICCIÓN O SELECCIÓN. Extrae las tuplas de una relación que satisfagan una condición especificada.
PROYECCIÓN. Extrae los atributos especificados de una relación dada.
REUNIÓN. A partir de dos relaciones especificadas, construye una relación que contiene todas las posibles combinaciones de tuplas, una de cada una de las dos relaciones, tales que las tuplas participen en una combinación dada satisfagan alguna condición especificada.
DIVISIÓN. Toma dos relaciones, una binaria y una unaria y construye una relación formada por todos los valores de un atributo de la relación binaria que concuerdan (en el otro atributo) con todos los valores en la relación unaria.
Propiedad de cerradura. El resultado de cada una de las operaciones es otra relación.
Dado que el resultado de una operación es un objeto del mismo tipo que los operandos, éste puede convertirse en operando de otra. Una relación resultado no tiene nombre y por ende no tiene una cabecera. (Uso del operador RENAME) .
Restricción Proyección Producto Cartesiano
Selección
a x a x
b Y a y
c b x
b y
c x
c y
Unión intersección Diferencia
Reunión natural División
A1 b1 b1 c1 a1 b1 c1 a x x a
A2 b2 b2 c2 a2 b1 c1 a y z
A3 b3 b3 c3 a3 b3 c3 a z
b x
c y
Operaciones del álgebra relacional.
La operación unión en el álgebra relacional no es la unión matemática. Es una forma limitada en la cual se obliga a las dos relaciones de entrada a tener la misma forma o las dos deben tener tuplas con “compatibilidad respecto a la unión”.
Dos relaciones son compatibles respecto a la unión si y sólo si sus cabeceras son idénticas, lo cual significa que:
a) Las dos tienen el mismo el mismo conjunto de nombres de atributos (y el mismo grado).
b) Los atributos correspondientes a las dos relaciones se definen sobre el mismo dominio.
La unión, la intersección y la diferencia requieren de operandos compatibles respecto a la unión. El producto cartesiano no tiene este requerimiento.
La operación Unión.
UNION. La unión de dos relaciones A y B compatibles respecto a la union, A UNION B (A B), es una relación cuya cabecera es idéntica a la de A o B y cuyo cuerpo está formado por todas las tuplas t pertenecientes ya sea a A o a B o a las dos.
La operación Intersección.
La intersección de dos relaciones compatibles respecto a la unión A y B, A INTERSECT B (A B), es una relación cuya cabecera es idéntica a la de A o B y cuyo cuerpo está formado por todas la tuplas t pertenecientes tanto a A como a B.
La operación Diferencia.
La diferencia entre dos relaciones compatibles con respecto a la unión A y B, A MINUS B, es una relación cuya cabecera es idéntica a la de A o B y cuyo cuerpo está formado por todas las tuplas t pertenecientes a A pero no a B.
Ejemplo: Considerando las relaciones:
Relación A
No_S Snombre Situación Ciudad
S1 Salazar 20 México
S4 Carmona 40 Morelia
S5 Alvarez 50 Puebla
Relación B
No_S Snombre Situación Ciudad
S1 Salazar 20 México
S2 Martinez 30 Veracruz
S3 Breidi 10 Puebla
S5 Alvarez 50 Puebla
A UNION B
No_S Snombre Situación Ciudad
S1 Salazar 20 México
S2 Martinez 30 Veracruz
S3 Breidi 10 Puebla
S4 Carmona 40 Morelia
S5 Alvarez 50 Puebla
A INTERSECT B
No_S Snombre Situación Ciudad
S1 Salazar 20 México
S5 Alvarez 50 Puebla
A MINUS B
No_S Snombre Situación Ciudad
S4 Carmona 40 Morelia
B MINUS A
No_S Snombre Situación Ciudad
S2 Martinez 30 Veracruz
S3 Breidi 10 Puebla
La operación Producto cartesiano.
En matemáticas, el producto cartesiano de dos conjuntos es el conjunto de todos los pares ordenados de elementos tales que el primer elemento de cada par pertenece al primer conjunto y el segundo elemento pertenece al segundo conjunto. Así el producto cartesiano de dos relaciones sería un conjunto de pares ordenados de tuplas.
Para conservar la propiedad de cerradura, la versión de producto cartesiano en álgebra relacional es una forma ampliada de la operación. Cada par ordenado de tuplas es reemplazado por la tupla resultante de la combinación de las dos tuplas del par ordenado.
Dadas dos tuplas
( A1:a1, A2:a2, ...,Am:am) y (B1:b1, B2:b2,...,Bn:bn)
la combinación de las dos tuplas es la
...