Documente Academic
Documente Profesional
Documente Cultură
Ejemplos
Dadas las relaciones r y s:
la unin se expresa
{ t / r(t) s(t)}
es decir, el conjunto de tuplas t tales que t
est en r en s
Ejemplos
Dadas las relaciones r y s:
la diferencia se expresa
r - s = { t / r(t) s(t) }
es decir, el conj. de tuplas t tales que t est
en r y no en s
Ejemplos
Dadas las relaciones r y s:
la proyeccin i1,...ik ( r ) se expresa
{ t (k) / u (r(u) t[1]=u[i1] ... t[k]=u[ik]) }
donde t (k) significa tuplas de grado k
Consultas de ejemplo
Encontrar el nombre-sucursal, nmeroprstamo, nombre-cliente y cantidad para
prstamos mayores de 1200 dlares.
esquema (nombre-cliente)
Necesitamos aquellas tuplas en (nombre-cliente) tales
que exista una tupla en prstamo correspondiente a
ese nombre-cliente con el atributo cantidad > 1200
La notacin
t r(Q (t))
significa existe una tupla t en la relacin r tal que el
predicado Q(t) es verdadero.
{ t / u depsito ( t[nombre-cliente]=u[nombre-cliente]
u [nombre-sucursal] = "Perryridge
s prstamo ( t[nombre-cliente]=s[nombre-cliente]
s [nombre-sucursal] = "Perryridge" ))}
{t / P(t)}
donde
s r
s[x] u [y]
s[x] c
s[x] c donde:
(P1)
P1 => P2
es equivalente a ( P1 P2)
Definicin formal de
Clculo Relacional de Dominios
Usa variables de dominio que toman valores del dominio
de un atributo.
Una expresin en el CRD es de la forma
Definicin formal de
Clculo Relacional de Dominios
Un tomo en el CRD tiene una de las formas siguientes:
xy
donde
xc
donde
Definicin formal de
Clculo Relacional de Dominios
Las frmulas se construyen a partir de tomos usando las
reglas siguientes:
Un tomo es una frmula.
Si P1 es una frmula, entonces tambin lo son
P1
(P1)
P1 => P2
Consultas de ejemplo
Encontrar nombre de sucursal, nmero de prstamo,
nombre de cliente y cantidad de prstamos mayores de
1200 dlares.
Son equivalentes:
El lgebra relacional.
El clculo relacional de tuplas.
El clculo relacional de dominios.
Completitud relacional
Un lenguaje es relacionalmente completo si es al
menos tan expresivo como el lgebra,
es decir si sus expresiones permiten la definicin de cualquier
relacin que pueda definirse mediante expresiones del lgebra.
Comparacin de lenguajes
algebraicos y de clculo
Los lenguajes de clculo son de ms alto nivel
que los algebraicos porque:
lenguajes algebraicos especifican el orden de
las operaciones
lenguajes de clculo dejan que el compilador
determine la manera (el orden) ms eficiente
Ejemplo
Dadas las relaciones R(A,B) y S(B,C)
1 - la expresin algebraica:
C A=a1( R |X| S ) significa
listar los valores C asociados con el valor A=a1 en la relacin
JOIN de columnas ABC
3 - En el clculo de dominios:
{c/ b (R(a1b) S(bc)}
expresa lo que se quiere
Observaciones:
1, 2 y 3 son equivalentes
Dependiendo de la organizacin de R y S la
opcin 1 puede llevar ms tiempo que 2.
Optimizacin => convertir una expresin a una
equivalente de menor costo