Beruflich Dokumente
Kultur Dokumente
Bases de Datos
Lenguajes relacionales
1 LENGUAJES RELACIONALES........................................................................... 3
1.1 LENGUAJES TERICOS DE REFERENCIA ................................................................................ 3
1.2 LENGUAJES COMERCIALES..................................................................................................... 4
2 LGEBRA RELACIONAL (AR)........................................................................... 4
2.1 CLASIFICACIN DE OPERADORES .......................................................................................... 4
2.2 DENOMINACIN DE ATRIBUTOS. .......................................................................................... 4
2.3 RELACIONES DERIVADAS. ...................................................................................................... 5
2.4 RELACIONES COMPATIBLES EN UNIN ................................................................................. 5
2.5 OPERADORES RELACIONALES ................................................................................................ 5
2.5.1 Unin ........................................................................................................................................................ 5
2.5.2 Interseccin .............................................................................................................................................. 6
2.5.3 Diferencia ................................................................................................................................................. 7
2.5.4 Producto cartesiano ................................................................................................................................ 7
2.5.5 Renombrado............................................................................................................................................. 8
2.5.6 Restriccin................................................................................................................................................ 9
2.5.7 Proyeccin .............................................................................................................................................. 10
2.5.8 Divisin................................................................................................................................................... 11
2.5.9 -concatenacin..................................................................................................................................... 12
2.5.10 -concatenacin externa por la izquierda .......................................................................................... 14
2.5.11 -concatenacin externa por la derecha............................................................................................. 15
2.5.12 -concatenacin externa simtrica...................................................................................................... 15
2.5.13 Agregacin.............................................................................................................................................. 16
2.5.14 Agregacin con restricciones sobre resultados ................................................................................. 17
3 CLCULO RELACIONAL (CR) .........................................................................17
3.1 CLCULO RELACIONAL ORIENTADO A TUPLAS (CROT) ...................................................... 17
3.1.1 Denominacin de atributos. ................................................................................................................ 17
3.1.2 Expresiones ............................................................................................................................................ 17
3.1.3 Formulas bien formadas y variables tupla. ........................................................................................ 18
3.1.4 Renombrado de expresiones................................................................................................................ 18
3.1.5 Ejemplos................................................................................................................................................. 19
3.1.6 SQL vs CROT ....................................................................................................................................... 19
3.2 CLCULO RELACIONAL ORIENTADO A DOMINIOS (CROD)................................................. 20
3.2.1 Expresiones ............................................................................................................................................ 20
3.2.2 Formulas bien formadas y variables dominio. .................................................................................. 20
3.2.3 Renombrado de expresiones................................................................................................................ 20
3.2.4 Ejemplos................................................................................................................................................. 21
3.2.5 QBE vs CROD...................................................................................................................................... 21
4 LENGUAJES RELACIONALES COMPLETOS ............................................... 22
5 CLASIFICACIN DE LOS SISTEMAS RELACIONALES.............................. 22
Pg. 2 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
1 Lenguajes relacionales
1.1 Lenguajes tericos de referencia
E.F.Codd, en 1972, extiende el modelo relacional bsico (RM/B) dotndolo de comportamiento dinmico
mediante la propuesta de dos lenguajes tericos de referencia:
Codd pretende dar respuesta a la especificacin de consultas sobre una base de datos relacional,
proponiendo un salto cualitativo sobre los lenguajes de datos existentes en la poca, de carcter
eminentemente procedural1. Tanto el AR como el CR son lenguajes de especificacin2 que se apoyan en
la base matemtica formal del RM/B (una relacin es un conjunto) para definir consultas a la base de datos
como la declaracin de conjuntos mediante su definicin por intensin (la propiedad que cumplen los
conjuntos).
Consulta q Q n
( (.. ( ( {Ri}))))
n 1 2 1
El clculo relacional es una aplicacin del clculo de predicados, basado en la lgica de primer orden. Una
relacin puede ser interpretada como un predicado bsico y una tupla de una relacin como un hecho
catalogado en dicha base de datos, para la cual el predicado toma el valor de verdad Verdadero; de este
modo, una consulta a la base de datos puede definirse como una funcin lgica, donde intervienen
predicados (relaciones), variables (variables tupla o variables de dominio segn la versin del clculo) y
constantes:
1 Lenguaje procedural es aquel que, desde la perspectiva de acceso a los datos en memoria externa, obliga a construir
procedimientos o algoritmos para dar respuesta a una consulta general sobre la base de datos. Se les denomina tambin
lenguajes navegacionales. Los lenguajes navegacionales solo permiten acceder a un registro con una instruccin o primitiva
elemental de manipulacin de datos.
2 Lenguaje de especificacin es aquel que, en lo referente al acceso a datos, permite, con primitivas de manipulacin, acceder,
SQL (Structured Query Language) es el lenguaje ms extendido para la definicin y manipulacin de bases
de datos relacionales. Es ISO desde 1986; actualmente existe el nivel ISO SQL3 de 1999; los SGBDs
comerciales utilizan generalmente el nivel SQL2 o SQL ISO de 1992. SQL es un lenguaje con interface de
comando, basado en el clculo relacional de tuplas.
R ( A : D A : D A : D ) o tambin R ({ A : D })
1 1, 2 2, .. n n i j
Pg. 4 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
y extensin z * {t Z * / ( t R ) ( t S )}
Productos ProductosPedidos
Pg. 5 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.2 Interseccin
y extensin z * {t Z * / ( t R ) ( t S )}
Productos
pid pdesc ppeso pprecio ProductosPedidos
P1 Televisor M1 27 56000 pid pdesc ppeso pprecio
P2 Televisor M2 30 78000 P1 Televisor M1 27 56000
P3 Televisor M3 35 97000 P2 Televisor M2 30 78000
P10 Mini TK67 12 112000 P11 Mini TK68 10 142000
P11 Mini TK68 10 142000 P20 Cadena A4 10 20000
Productos ProductosPedidos
Pg. 6 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.3 Diferencia
y extensin z * {t Z * / ( t R ) ( t
/ S )}
Productos
pid pdesc ppeso pprecio ProductosPedidos
P1 Televisor M1 27 56000 pid pdesc ppeso pprecio
P2 Televisor M2 30 78000 P1 Televisor M1 27 56000
P3 Televisor M3 35 97000 P2 Televisor M2 30 78000
P10 Mini TK67 12 112000 P11 Mini TK68 10 142000
P11 Mini TK68 10 142000 P20 Cadena A4 10 20000
Productos ProductosPedidos
y extensin z * {( t = rs ) Z * /r R s S }
Pg. 7 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
Productos
Pid pdesc ppeso pprecio
P1 Televisor M1 27 56000 AExistencias
P2 Televisor M2 30 78000 aid pid acant
P3 Televisor M3 35 97000 A2 P1 156
P10 Mini TK67 12 112000 A2 P2 1234
P11 Mini TK68 10 142000
Productos AExistencias
Pid pdesc ppeso pprecio aid pid acant
P1 Televisor M1 27 56000 A2 P1 156
P2 Televisor M2 30 78000 A2 P1 156
P3 Televisor M3 35 97000 A2 P1 156
P10 Mini TK67 12 112000 A2 P1 156
P11 Mini TK68 10 142000 A2 P1 156
P1 Televisor M1 27 56000 A2 P2 1234
P2 Televisor M2 30 78000 A2 P2 1234
P3 Televisor M3 35 97000 A2 P2 1234
P10 Mini TK67 12 112000 A2 P2 1234
P11 Mini TK68 10 142000 A2 P2 1234
2.5.5 Renombrado
Mediante el operador podemos renombrar una relacin y sus atributos
( dom ( B ) = dom ( A ) )
1 1 ( dom ( B ) = dom ( A ) ) ..( dom ( B ) = dom ( A ) )
2 2 n n
( ( (
S ( B1, B 2,.. Bn ) = n n 1 .. 2 1 ( { Ri})
)))
Existencias
codigo desc peso precio almacen codprod cantidad
P1 Televisor M1 27 56000 A2 P1 156
P2 Televisor M2 30 78000 A2 P1 156
P3 Televisor M3 35 97000 A2 P1 156
P10 Mini TK67 12 112000 A2 P1 156
P11 Mini TK68 10 142000 A2 P1 156
P1 Televisor M1 27 56000 A2 P2 1234
P2 Televisor M2 30 78000 A2 P2 1234
P3 Televisor M3 35 97000 A2 P2 1234
P10 Mini TK67 12 112000 A2 P2 1234
P11 Mini TK68 10 142000 A2 P2 1234
Pg. 8 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.6 Restriccin
Es decir Z * tiene el mismo esquema de R y las tuplas z * de Z * son las tuplas de R que satisfacen la
condicin impuesta en la formula f
La formula f es cierta para una tupla t cuando al sustituir en f cada nombre de atributo por su
correspondiente valor en t dicha frmula se cumple; f adquiere el valor de verdad Verdadero.
Pg. 9 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.7 Proyeccin
Es decir Z * tiene como esquema un subconjunto de atributos del esquema de R y las tuplas z * de Z *
son tales que al menos aparece en R una tupla con dichos valores.
AExistencias
aid pid Acant
A2 P1 156
A2 P2 1234
A2 P3 69
A2 P10 120
A2 P11 345
A3 P3 5000
A4 P1 200
A4 P2 956
A4 P3 134
A4 P10 120
A4 P11 542
Pid , Acant
AExistencias
pid acant
P1 156
P2 1234
P3 69 AExistencias
Pid
P10 120
P11 345 pid
P3 5000 P1
P1 200 P2
P2 956 P3
P3 134 P10
P10 120 P11
P11 542
Pg. 10 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.8 Divisin
Sean
R ( A{ Ai : Di} , B {Bj : Ej}) y S ( B{Bj : Ej}) dos relaciones con esquema los subconjuntos
de atributos(descriptores) A, B
R( A, B )
se define Z* = , como la relacin derivada de esquema Z * ( A{ Ai : Di})
S ( B)
y extensin z * {t Z * /b S tb R}
AExistencias
aid pid acant
A2 P1 156
A2 P2 1234
A2 P3 69
Productos
A2 P10 120
pid pdesc ppeso pprecio
A2 P11 345
P1 Televisor M1 27 56000
A3 P3 5000
P2 Televisor M2 30 78000
A4 P1 200
P3 Televisor M3 35 97000
A4 P2 956
P10 Mini TK67 12 112000
A4 P3 134
P11 Mini TK68 10 142000
A4 P10 120
A4 P11 542
AExistencias aid
Aid , Pid A2
A4
Pr oductos
Pid
R( A, B )
C ( A) = es equivalente a:
S ( B)
C ( A) = R S R R
A
A
A
Pg. 11 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.9 -concatenacin
Sean
R ({ Ai : Di}) y S ({Bj : Ej}) dos relaciones tales que dom( Ai ) = dom( Bj )
y un escalar de comparacin (= <> ) ;
se define Z* = R 6 S,
R. Ai S .Bj
(
como la relacin derivada de esquema Z * {R. Ai : Di} {S .Bj : Ej} )
y extensin
z * {( t = rs ) Z * /r R s S ( r. Ai s.Bj = Verdad )}
Z* = R 6 S
Si X = ( X 1, X 2, .. Xk ) = ( A1, A2, .. An ) (B B 1, 2, .. Bm )
Si Y = (Y 1, Y 2, ..Yp ) = ( A1, A2, .. A ) (B B
n 1, 2, .. Bm )
Z *= R6 S = ( R S ) = ( R S )
X
R .Y = S .Y X 1, X 2 ,.. Xk
R.Y 1 = S .Y 1
R .Y 2 = S .Y 2
.. R .Yp = S .Yp
Pg. 12 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
AExistencias
aid pid acant
A2 P1 156
A2 P2 1234
A2 P3 69
A2 P10 120
A2 P11 345 Productos
A3 P3 5000 pid pdesc ppeso pprecio
A4 P1 200 P1 Televisor M1 27 56000
A4 P2 956 P2 Televisor M2 30 78000
A4 P3 134 P3 Televisor M3 35 97000
A4 P10 120 P10 Mini TK67 12 112000
A4 P11 542 P11 Mini TK68 10 142000
A4 P22 10 P20 Producto nuevo 10 100
Z * = AExistencias 6
AExistencias . pid = Pr oductos . pid
Pr oductos
Pg. 13 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
Sean
R ({ Ai : Di}) y S ({Bj : Ej}) dos relaciones, tal que dom( Ai ) = dom( Bj )
y un escalar de comparacin (= <> ) ; se define Z * = R 7 S , como la relacin derivada de
R. Ai S . Bj
esquema Z * {R. Ai : Di} {S .Bj : Ej} y
Z * = AExistencias 7 Productos
AExistencias.pid=Productos.pid
aid pid acant pdesc ppeso pprecio
A2 P1 156 Televisor M1 27 56000
A2 P2 1234 Televisor M2 30 78000
A2 P3 69 Televisor M3 35 97000
A2 P10 120 Mini TK67 12 112000
A2 P11 345 Mini TK68 10 142000
A3 P3 5000 Televisor M3 35 97000
A4 P1 200 Televisor M1 27 56000
A4 P2 956 Televisor M2 30 78000
A4 P3 134 Televisor M3 35 97000
A4 P10 120 Mini TK67 12 112000
A4 P11 542 Mini TK68 10 142000
A4 P22 10
Pg. 14 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
Z * = AExistencias 8 Productos
AExistencias.pid=Productos.pid
aid pid acant pdesc ppeso pprecio
A2 P1 156 Televisor M1 27 56000
A2 P2 1234 Televisor M2 30 78000
A2 P3 69 Televisor M3 35 97000
A2 P10 120 Mini TK67 12 112000
A2 P11 345 Mini TK68 10 142000
A3 P3 5000 Televisor M3 35 97000
A4 P1 200 Televisor M1 27 56000
A4 P2 956 Televisor M2 30 78000
A4 P3 134 Televisor M3 35 97000
A4 P10 120 Mini TK67 12 112000
A4 P11 542 Mini TK68 10 142000
P20 Producto Nuevo 10 100
(
esquema Z * {R. Ai : Di} {S .Bj : Ej} y extensin )
rs Z * sii: r R s S ( r. Ai s.Bj = Verdad )
z * t /t = rn Z */(Bj n.Bj = null ) sii : r R / s S ( r. Ai s.Bj = Verdad )
ns Z */(Aj n. Aj = null ) sii : s S / r R ( r. Ai s.Bj = Verdad )
Z * = AExistencias 9 Productos
AExistencias.pid=Productos.pid
aid pid acant pdesc ppeso pprecio
A2 P1 156 Televisor M1 27 56000
A2 P2 1234 Televisor M2 30 78000
A2 P3 69 Televisor M3 35 97000
A2 P10 120 Mini TK67 12 112000
A2 P11 345 Mini TK68 10 142000
A3 P3 5000 Televisor M3 35 97000
A4 P1 200 Televisor M1 27 56000
A4 P2 956 Televisor M2 30 78000
A4 P3 134 Televisor M3 35 97000
A4 P10 120 Mini TK67 12 112000
A4 P11 542 Mini TK68 10 142000
A4 P22 10
P20 Producto Nuevo 10 100
Pg. 15 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
2.5.13 Agregacin
Sea R ({ Ai : Di})
se define Z * = F
g ( R ) donde g es el criterio de agrupacin y F es un conjunto de funciones
agregadas:
1) si no hay criterios de agrupacin;
la relacin R es particionada en una nica clase de equivalencia R0=R
g=
2) A{ Ai} , A R; R queda particionada en clases de equivalencia,
tales que cada particin Ri de tuplas t R tiene el mismo valor de A
Z * ( F ) ; siendoF = {Fi} un conjunto de funciones agregadas aplicables a cada particin Ri
g
Fi = '
sum( A i), count ( A i), count ( distinct ( A i )), max( Ai ), min( A i), avg ( A i), std ( A i )
' ' ' ' ' '
y extensin
z * {t Z * /Ri se obtiene una sola tupla agregada t aplicando las funciones de agregacin Fi}
AExistencias
aid pid acant Productos existentes en los distintos almacenes:
A2 P1 156 count ( pid )
A2 P2 1234 Z * = ( AExistencias ),
A2 P3 69
count ( pid )
A2
A2
P10
P11
120
345
o bien: Z * = ( AExistencias ) ,
A3 P3 5000 count (*)
A4 P1 200 Z* = ( AExistencias )
A4 P2 956
Count(*)
A4 P3 134
11
A4 P10 120
A4 P11 542
Pg. 16 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
(F)
Se define Z * = gf ( R ) , como la relacin derivada de esquema idntico al caso anterior. Pero es
posible aplicar una restriccin algebraica sobre el esquema del resultado intermedio de la agrupacin.
Productos cuya media de existencias en los almacenes est por debajo de 200
( pid ,avg ( acant ) ) pid avg(acant)
Z * = pid ( AExistencias ) P1
avg ( acant ) < 200
178
P10 120
El clculo relacional se basa en la lgica de primer orden. Codd elabor dos propuestas de lenguajes de
especificacin: el clculo relacional orientado a tuplas y el clculo relacional orientado a dominios.
Por extensin, una variable tupla puede definirse sobre la unin de un conjunto de relaciones
compatibles.
3.1.2 Expresiones
Una expresin del clculo de tuplas tiene la forma:
donde:
Pg. 17 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
La relacin definida por una expresin del CROT puede interpretarse algebraicamente como:
Puede decirse que una ocurrencia de una variable tupla en una frmula es ligada o acotada si se introduce
en ella a travs de un cuantificador y libre si no es as, entendiendo por ocurrencia de una variable en una
frmula la aparicin del nombre de la variable en dicha frmula.
a) Cualquier condicin es un FBF. En una condicin todas las ocurrencias de variables son libres.
b) Si f es una FBF tambin lo son ( f ) y ( f )
Las ocurrencias de variables en ( f ) y ( f ) sern libres o acotadas segn lo sean en f
c) Si f y g son FBF tambin lo son (f g) y (f g)
Las ocurrencias de variables en ( f g ) y ( f g ) sern libres o acotadas segn sean en f y g .
d) Si f es una FBF en la cual t aparece como variable libre, entonces tambin son FBFs
t ( f ) y t ( f )
Las ocurrencias de t libres en f sern acotadas en t ( f ) y t ( f ) .
Cualquier otra ocurrencia de variable en f ser libre o acotada en t ( f ) y t ( f ) segn sea en f
e) Las frmulas que no se definan a partir de las reglas a, b) c) y d) no son FBF
2 n
{
R ( B ,B ,.. B ) := t.A , r.B ,.. s.C ( f )
1 i j k
}
dom(B1) = dom(t.Ai) dom(B2) = dom(r.Bj) .. dom(Bn ) = dom(s.Ck)
Pg. 18 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
3.1.5 Ejemplos
a) Obtener el cdigo y la descripcin de los productos de peso igual a 30
{Px.Pid,Px.PdescProductos (Px) Px.Ppeso = '30 '}
b) Obtener el cdigo de los almacenes que tienen existencia del producto Televisor M2 y cantidad
que tienen en stock.
Productos ( Px )
AEx.Aid, AEx .Acant AExistencias ( AEx )
(Px )
Px.Pid = AEx .Pid Px. Pdesc = 'Televisor M2'
El lenguaje estndar SQL para definicin y manipulacin de datos en SGBD relacionales est basado en
el clculo relacional orientado a tuplas.
La consulta b) Obtener el cdigo de los almacenes que tienen existencia del producto Televisor M2 y
cantidad que tienen en stock:
Productos ( Px )
AEx.Aid, AEx.Acant AExistencias ( AEx ) (Px)
Px.Pid = AEx.Pid Px.Pdesc = 'Televisor M2'
en SQL:
SELECT AEx.Aid, AEx.Acant
FROM Aexistencias AEx, Productos Px WHERE Px.Pid = AEx.Pid AND Px.Pdesc=Televisor M2;
Pg. 19 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
3.2.1 Expresiones
Estn basadas en expresiones de comparacin denominadas : condiciones de pertenencia de la
forma:
R ( A :v , A :v ..
1 1 2 2
) donde R es una relacin y las parejas A : v i i
{v1,v2,..(f )}
3.2.2 Formulas bien formadas y variables dominio.
El siguiente conjunto de reglas recogen los conceptos de FBF, variables dominio libre y variables
dominio acotada.
a) Cualquier condicin de pertenencia o condicin v1v2. es una FBF. Todas las ocurrencias de
variables son libres.
b) Si f es una FBF tambin lo son ( f ) y ( f )
Las ocurrencias de variables en ( f ) y ( f ) sern libres o acotadas segn lo sean en f
c) Si f y g son FBF tambin lo son (f g) y (f g)
Las ocurrencias de variables en ( f g ) y ( f g ) sern libres o acotadas segn sean en f y g .
d) Si f es una FBF en la cual t aparece como variable libre, entonces tambin son FBFs
t ( f ) y t ( f )
Las ocurrencias de t libres en f sern acotadas en t ( f ) y t ( f ) .
Cualquier otra ocurrencia de variable en f ser libre o acotada en t ( f ) y t ( f ) segn sea en f
e) Las frmulas que no se definan a partir de las reglas a, b) c) y d) no son FBF
Pg. 20 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
3.2.4 Ejemplos
a) Obtener el cdigo y la descripcin de los productos de peso igual a 30
{Pid _ x, Pdesc _ x Productos ( Pid: Pid _ x, Desc: Pdesc _ x, Ppeso:'30 ')}
b) Obtener el cdigo de los almacenes que tienen existencia del producto Televisor M2 y cantidad
que tienen en stock.
AExistencias(Aid:Aid _ x, Pid:Pid _ x, Acant : Acant _ x)
Aid _ x, Acant _ x ( Pid _ x )
Productos (Pid:Pid _ x, Pdesc: 'TelevisorM2')
c) Almacenes que tienen existencias de ms de un producto
AExistencias ( Aid : Aid _ x, Pid : Pid _ x )
Aid _ x ( Pid _ x )( Pid _ y ) AExistencias ( Aid : Aid _ x, Pid : Pid _ y )
Pid _ x Pid _ y
d) Almacenes que tienen existencias de ms de un producto. Renombrar la relacin y el atributo
que se obtienen
AExistencias ( Aid : Aid _ x, Pid : Pid _ x )
Almacenes(codigo) Aid _ x ( Pid _ x )( Pid _ y ) AExistencias ( Aid : Aid _ x, Pid : Pid _ y )
Pid _ x Pid _ y
QBE es un lenguaje propuesto por Zloof en el que el usuario para formular la consulta rellena una
plantilla que se presenta en pantalla.
La consulta b) Obtener el cdigo de los almacenes que tienen existencia del producto Televisor M2 y
cantidad que tienen en stock:
AExistencias(Aid:Aid _ x, Pid:Pid _ x, Acant : Acant _ x)
Aid _ x, Acant _ x ( Pid _ x )
Productos (Pid:Pid _ x, Pdesc: 'TelevisorM2')
En la interface QBE de Access sera:
Pg. 21 de 22
Bases de Datos Lenguajes relacionales
Sevilla, octubre 2005, V 2005.10.1
Un lenguaje es relacionalmente completo si tiene al menos la misma capacidad expresiva que el CROT y
por tanto que el AR3.
Para comprobar la completitud de un lenguaje es suficiente demostrar que se pueden escribir expresiones
en dicho lenguaje para cada uno de los operadores del lgebra relacional (realmente bastara comprobarlo
slo para los operadores primitivos). Es decir:
Si adems el lenguaje permite el almacenamiento temporal de relaciones, cualquier relacin definida por una
expresin de CROT o AR podr ser obtenida en dicho lenguaje, teniendo as la misma capacidad expresiva
que ellos, siendo por tanto un lenguaje relacional completo.
Existe una definicin ms restrictiva asociada a la completitud de un lenguaje relacional, la cual considera
que un lenguaje es relacionalmente completo si cualquier relacin definida a partir de una expresin de
CROT o AR se puede definir con una expresin nica en dicho lenguaje.