Bdi T6
Bdi T6
Bdi T6
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Visión general
ALGEBRA RELACIONAL
El Algebra Relacional
Sintaxis
Qué símbolos se utilizan para cada operador y qué
parámetros recibe.
Semántica
¿Cuál es el esquema del resultado?.
¿Cuál es la instancia del resultado?.
¿Qué condiciones se deben cumplir para que se pueda
aplicar el operador?.
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Selección
Descripción general
ALGEBRA RELACIONAL
Selección
Descripción general
σθ (R)
da como resultado otra relación
con esquema igual que el de R
con instancia el conjunto de tuplas de las instancias de R
que cumplen con θ
ALGEBRA RELACIONAL
Selección
Ejemplos
ALGEBRA RELACIONAL
Selección
Ejemplos
σAPELLIDO1=GONZALEZ (EMPLEADO)
σSUELDO>3000 (EMPLEADO)
σAPELLIDO1=GONZALEZ and SUELDO>3000 (EMPLEADO)
σnot (APELLIDO1=GONZALEZ and SUELDO>3000) (EMPLEADO)
σAPELLIDO1=APELLIDO2 (EMPLEADO)
ALGEBRA RELACIONAL
Selección
Ejemplos
σAPELLIDO1=GONZALEZ (EMPLEADO)
σSUELDO>3000 (EMPLEADO)
σAPELLIDO1=GONZALEZ and SUELDO>3000 (EMPLEADO)
σnot (APELLIDO1=GONZALEZ and SUELDO>3000) (EMPLEADO)
σAPELLIDO1=APELLIDO2 (EMPLEADO)
ALGEBRA RELACIONAL
Proyección
Descripción general
ALGEBRA RELACIONAL
Proyección
Descripción general
πA1,...,An (R)
da como resultado otra relación
con esquema (A1 , . . . , An )
con tuplas formadas a partir de las de R tomando los
valores para los atributos A1 , . . . , An
ALGEBRA RELACIONAL
Proyección
Ejemplos
πSEXO,SUELDO (EMPLEADO)
ALGEBRA RELACIONAL
Secuencia de operaciones
Descripción general
Relación intermedia:
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Unión
Descripción general
ALGEBRA RELACIONAL
Unión
Descripción general
La operación:
(R ∪ S)
da como resultado otra relación
cuyo esquema es igual al de R (y S)
y tiene como conjunto de tuplas a la unión de las de R y las
de S.
ALGEBRA RELACIONAL
Intersección
Descripción general
ALGEBRA RELACIONAL
Intersección
Descripción general
La operación:
(R ∩ S)
da como resultado otra relación
cuyo esquema es igual al de R (y S)
y tiene como conjunto de tuplas a la intersección de las de
R y las de S.
ALGEBRA RELACIONAL
Diferencia
Descripción general
ALGEBRA RELACIONAL
Diferencia
Descripción general
La operación:
(R − S)
da como resultado otra relación
cuyo esquema es igual al de R (y S)
y tiene como conjunto de tuplas a la resta de las de R
menos las de S.
ALGEBRA RELACIONAL
Cuestionario
Unión, Intersección, Resta
¿(R ∪ (S ∪ T )) = ((R ∪ S) ∪ T ) ?
¿La Intersección (∩) también es una operación asociativa?
La Union e Intersección son conmutativas ¿La resta
también lo es?
ALGEBRA RELACIONAL
Producto Cartesiano
Descripción general
ALGEBRA RELACIONAL
Producto Cartesiano
Descripción general
La operación:
(R × S)
da como resultado otra relación
cuyo esquema es (A1 , . . . , An , B1 , . . . , Bm )
y cuyas tuplas son generadas por todas las combinaciones
posibles de las de R con las de S.
ALGEBRA RELACIONAL
Producto Cartesiano
Ejemplos
VENTAS
FABS PRODS
#f #p Precio
#f Nombre Direcc #p Desc 1 1 100
1 Juan d1 1 t1 1 2 200
2 Pedro d2 2 t2 1 3 300
4 Maria d3 3 t3 1 10 1000
5 Ana d2 5 t2 1 11 1100
6 Pedro d4 6 t3 2 3 350
9 Pepe d5 7 t4 2 6 600
10 Laura d4 9 t2 2 7 700
13 Maria d3 10 t1 5 3 350
15 Pedro d1 11 t3 5 5 200
16 Oscar d3 12 t2 9 7 100
19 Juan d4 15 t3 9 3 300
10 3 400
ALGEBRA RELACIONAL
Producto Cartesiano
Ejemplos
da como resultado:
#p Desc #f #p Precio
1 t1 1 1 100
1 t1 1 2 200
2 t2 1 1 100
2 t2 1 2 200
ALGEBRA RELACIONAL
Producto Cartesiano
Ejemplos
da como resultado:
Desc #f #p Precio
t1 1 1 100
t1 1 2 200
t2 1 1 100
t2 1 2 200
ALGEBRA RELACIONAL
Outline
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
ALGEBRA RELACIONAL
Operadores Derivados
Operaciones relacionales binarias
ALGEBRA RELACIONAL
Join
Descripción general
ALGEBRA RELACIONAL
Join
Descripción general
ALGEBRA RELACIONAL
Θ-Join
Descripción general
Ro
nθ S
es equivalente a realizar:
σθ (R × S)
¿Cuál es el esquema resultado?
ALGEBRA RELACIONAL
Join Natural
Descripción general
R∗S
es equivalente a realizar:
Θ-Join con la condición de igualdad entre los atributos de
igual nombre
y luego proyectar eliminando columndas con nombre
repetido
ALGEBRA RELACIONAL
Join Natural
Ejemplos
ALGEBRA RELACIONAL
División
Descripción general
La operación:
(R ÷ S)
da como resultado otra relación
cuyo esquema es (A1 , . . . , An )
y su contenido son las tuplas tomadas a partir de las de
r (R) tales que su valor (a1 , . . . , an ) está asociado en r (R)
con TODOS los valores (b1 , . . . , bm ) que están en s (S)
ALGEBRA RELACIONAL
División
Ejemplos
Sean R y S, y Q = R ÷ S
R( A, B ) S( B ) Q( A )
a1 b1 b1 a2
a1 b2 b2 =⇒
a2 b1 b3
a2 b2
a2 b3
a2 b4
a3 b1
a3 b3
T 1 ← πX (R)
Valores base a incluir en el resultado.
T 2 ← πX ((T 1 × S) − R)
Tuplas de R a las que les falta relacionarse en R con algún
elemento de S.
Lo que NO se quiere en el resultado.
T ← T1 − T2
T 1 ← πX (R)
Valores base a incluir en el resultado.
T 2 ← πX ((T 1 × S) − R)
Tuplas de R a las que les falta relacionarse en R con algún
elemento de S.
Lo que NO se quiere en el resultado.
T ← T1 − T2
T 1 ← πX (R)
Valores base a incluir en el resultado.
T 2 ← πX ((T 1 × S) − R)
Tuplas de R a las que les falta relacionarse en R con algún
elemento de S.
Lo que NO se quiere en el resultado.
T ← T1 − T2
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
Ejecución:
1 Se ejecuta la operación de un nodo interno, siempre que
estén disponibles sus operandos.
2 Reemplazar ese nodo interno por la relación que resulta de
la ejecución de la operación.
El proceso concluye cuando se ejecuta el nodo raíz y se
obtiene la relación resultante de la consulta.
πNumProyecto,NumDptoProyecto,Apellido1,Direccion,FechaNac
(((σUbicacionProyecto=0 Gijon0 (PROYECTO))
nNumDptoProyecto=NumeroDpto (DEPARTAMENTO))
o
nDniDirector =Dni (EMPLEADO))
o
πNumProyecto,NumDptoProyecto,Apellido1,Direccion,FechaNac
o
nD.DniDirector =E.Dni
o
nP.NumDptoProyecto=D.NumeroDpto E EMPLEADO
P PROYECTO
1 Introducción
Vision general
2 Operadores
Operaciones relacionales unarias
Operaciones de la teoría de conjuntos
Operadores derivados
3 Árbol de consulta
R o<condicion> S
R n<condicion> S
Concatenación externa completa (Full Outer Join)