Documentos de Académico
Documentos de Profesional
Documentos de Cultura
_____
Ing. Neicer Campos Vsquez
ALGEBRA RELACIONAL
Introduccin
El lgebra relacional consiste en un conjunto de operadores que se aplican a una o dos
relaciones y producen como resultado otra relacin. Una consulta se formaliza en este lenguaje
como una expresin compuesta de operadores, variables relcionales que representan los
operandos, y consantes. Se utilizar un ejemplo para ir presentando los operadores y su
semntica. Supongamos la relacin clientes:
NroCli Nombre Fecha_Alta Saldo
1 Enrique 14/09/1996 100
2 Fernando 21/07/1998 -60
3 German 19/12/1994 500
4 Alejandro 02/01/1999 90
Seleccin
El primer operador que se va a presentar es la seleccin Seleccin . Este es un operador
unario, por lo que toma como operando a una sola relacin y su valor es cierto subconjunto de
las tuplas de esa relacin. Por ejemplo, si queremos saber cules clientes tienen saldo positivo,
la sentencia:
saldo>0
(Clientes)
producir el siguiente resultado:
NroCli Nombre Fecha_Alta Saldo
1 Enrique 14/09/1996 100
3 German 19/12/1994 500
4 Alejandro 02/01/1999 90
para determinar todas los clientes que se dieron de alta desde el ao 1998 hasta la actualidad:
i r+j-1
(R X S)
.
Por ejemplo, la consulta sobre fechas de parciales y finales para cada materia mencionada
anteriormente, puede escribirse usando junta como:
[
f_parciales.Materia, f_parciales.fecha,
f_finales.fecha
(f_parciales |X| f_finales)f_parciales.m
ateria=f_finales.materia
Finalmente, el operador de junta natural es aplicable solamente cuando las columnas de las
relaciones que participan en la operacin tienen el mismo nombre; en cuyo caso no es necesario
explicitar la condicin de junta, ya que juntaremos por las columnas que tienen el mismo
nombre.
Divisin o Cociente
La operacin divisin es til para un tipo especial de consultas que se present ocasionalmente
en aplicaciones de bases de datos. Un ejemplo es: "obtener los nombres de los empleados que
trabajan en todos los proyectos en los que trabaja 'Juan Perez'". La operacin divisin se aplica
a dos relaciones R(Z) S(X), donde X c Z. Sea Y = Z - X; es decir, sea Y el conjunto de
atributos de R que no son atributos de S, el resultado de la divisin es una relacin T(Y) que
incluye una tupla t si una tupla t
R
cuyo t
R
[Y]=t aparece en R, con t
R
[X]=t
S
para cada tupla t
S
en
S. Esto significa que, para cada tupla t que aparezca en el resultado T de la divisin, los valores
de t deben aparecer en R en combinacin con todas las tuplas de S.
Con operadores bsicos, el operador divisin se puede expresar de la siguiente manera:
R S = [
Y
(R) - [
Y
((S X [
Y
(R) - R)