0% encontró este documento útil (0 votos)
89 vistas35 páginas

Introducción al Álgebra Relacional

Este documento presenta una introducción al álgebra relacional. Explica que el álgebra relacional proporciona un conjunto de operaciones básicas para manipular relaciones en una base de datos, como selección, proyección y operaciones de teoría de conjuntos. También describe brevemente algunas operaciones derivadas y la motivación y relevancia del álgebra relacional.

Cargado por

Carlos Fernandez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
89 vistas35 páginas

Introducción al Álgebra Relacional

Este documento presenta una introducción al álgebra relacional. Explica que el álgebra relacional proporciona un conjunto de operaciones básicas para manipular relaciones en una base de datos, como selección, proyección y operaciones de teoría de conjuntos. También describe brevemente algunas operaciones derivadas y la motivación y relevancia del álgebra relacional.

Cargado por

Carlos Fernandez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Álgebra Relacional

Luis Valencia Cabrera ([email protected])

Research Group on Natural Computing


Departamento de Ciencias de la Computación e Inteligencia Artificial
Universidad de Sevilla

04-11-2019, Bases de Datos

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Álgebra
Un álgebra es un sistema matemático constituido por
Operandos: objetos (valores o variables) desde los cuales nuevos
objetos pueden ser construidos.
Operadores: sı́mbolos que producen (o denotan o identifican)
nuevos objetos desde objetos dados.

Álgebra relacional: Álgebra en la cual...


Sus operandos son relaciones (instancias) o variables que
representan relaciones.
Sus operadores están diseñados para hacer la tareas más comunes
que se necesitan para manipular relaciones en una base de datos.
Nota: el AR se puede utilizar como lenguaje de consulta, aunque en la
práctica debe ser extendida para abarcar la mayorı́a de tareas reales con
datos.
Luis Valencia Cabrera ([email protected]) Bases de Datos
Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Motivación

Un modelo de datos debe incluir un conjunto de operaciones


para manipular la base de datos.
El conjunto de operaciones básicas del modelo relacional es el
álgebra relacional, que permite al usuario especificar las
peticiones fundamentales de recuperación.
El resultado de una recuperación es una nueva relación.
Una secuencia de operaciones de álgebra relacional conforma
una expresión de álgebra relacional, cuyo resultado será
también una nueva relación que representa el resultado de una
consulta a la base de datos (o una petición de recuperación).

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Relevancia

El álgebra relacional es importante por varias razones:


Proporciona un fundamento formal para las operaciones del
modelo relacional.
Se utiliza como base para la implementación y optimización
de consultas en los SGBD relacionales.
Algunos de sus conceptos se han incorporado al lenguaje
estándar de consultas SQL.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación SELECCIÓN/RESTRICCIÓN

Se emplea para seleccionar un subconjunto de las tuplas de


una relación que satisfacen una condición de selección.
Se puede considerar esta operación como un filtro que
mantiene sólo las tuplas que satisfacen la condición
establecida.
Puede visualizarse también como una partición horizontal de
la relación.

σ<CondicionDeSeleccion> (R) o bien R WHERE condicion


donde R es una expresión del álgebra relacional (nombre de una
relación, variable o resultado de operación previa).

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo: Relación EMPLEADO

Relación EMPLEADO
Nombre Apell1 Apell2 Dni Dirección Sex Sueldo NRP Dep
José Pérez Pérez 123456789 Eloy 1,98 H 30000 333445555 5
Alberto Campos Sastre 333445555 Avda. Rı́os, 9 H 40000 888665555 5
Alicia Jiménez Celaya 999887777 Gran Vı́a, 38 M 25000 987654321 4
Juana Sainz Oreja 987654321 Cerquillas, 67 M 43000 888665555 4
Fernando Ojeda Ordóñez 666884444 Portillo, s/n H 38000 333445555 5
Aurora Oliva Avezuela 453453453 Antón, 6 M 25000 333445555 5
Luis Pajares Morera 987987987 Enebros, 90 H 25000 987654321 4
Eduardo Ochoa Paredes 888665555 Las Peñas, 1 H 55000 NULL 1

σ<(Dep=4ANDSueldo>25000)OR(Dep=5ANDsueldo>30000)> (EMPLEADO)

EMPLEADO WHERE (Dep=4 AND Sueldo>25000) OR (Dep=5 AND sueldo>30000)


Nombre Apell1 Apell2 Dni Dirección Sex Sueldo NRP Dep
Alberto Campos Sastre 333445555 Avda. Rı́os, 9 H 40000 888665555 5
Juana Sainz Oreja 987654321 Cerquillas, 67 M 43000 888665555 4
Fernando Ojeda Ordóñez 666884444 Portillo, s/n H 38000 333445555 5

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación PROYECCIÓN

Si pensamos en una relación como en una tabla, la operación


SELECCIÓN elige algunas de las filas de la tabla.
PROYECCIÓN devuelve los datos de ciertas columnas de la
tabla y descarta otras. Además, elimina resultados duplicados
en la relación resultante.
Si sólo estamos interesados en algunos atributos de una
relación, usamos la operación PROYECCIÓN.
Por consiguiente, el resultado de esta operación puede
visualizarse como una partición vertical de la relación.

π<ListaDeAtributos> (R) o bien R[ListaDeAtributos]


donde R es una expresión del álgebra relacional, la más sencilla es
el nombre de una relación.
Luis Valencia Cabrera ([email protected]) Bases de Datos
Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo: Relación EMPLEADO


Relación EMPLEADO
Nombre Apell1 Apell2 Dni Dirección Sex Sueldo NRP Dep
José Pérez Pérez 123456789 Eloy 1,98 H 30000 333445555 5
Alberto Campos Sastre 333445555 Avda. Rı́os, 9 H 40000 888665555 5
Alicia Jiménez Celaya 999887777 Gran Vı́a, 38 M 25000 987654321 4
Juana Sainz Oreja 987654321 Cerquillas, 67 M 43000 888665555 4
Fernando Ojeda Ordóñez 666884444 Portillo, s/n H 38000 333445555 5
Aurora Oliva Avezuela 453453453 Antón, 6 M 25000 333445555 5
Luis Pajares Morera 987987987 Enebros, 90 H 25000 987654321 4
Eduardo Ochoa Paredes 888665555 Las Peñas, 1 H 55000 NULL 1

π<Dni,Sueldo> (EMPLEADO)
Dni Sueldo
123456789 30000
333445555 40000
999887777 25000
987654321 43000
666884444 38000
453453453 25000
987987987 25000
888665555 55000

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación RENOMBRADO
En general, podemos aplicar varias operaciones de AR una
tras otra. Para ello, tenemos varias opciones:
• Escribir las operaciones como una única expresión de
álgebra relacional anidando dichas operaciones
• Aplicar expresiones más simples, usando relaciones
intermedias. Para ello, debemos asignar a una variable
cada una de las relaciones intermedias:

TEMP ← expresion relacional

Además, podemos renombrar campos A1 , . . . , An de una


relación R de grado n a nuevos nombres B1 , . . . , Bn mediante
el operador ρ:
ρ(B1 ,...,Bn ) (R)

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación de asignación y RENOMBRADO


Ejemplo

Podemos escribir la expresión anidada


π<Nombre,Apell1,Sueldo> (σ<Dep=5> (EMPLEADO)), y posteriormente
renombrar sus campos, haciendo:
TEMP1 ← σ<Dep=5> (EMPLEADO)
TEMP2 ← π<Nombre,Apell1,Sueldo> (TEMP1 )
RESULTADO ← ρ(Nombre,Apellido,Salario) (TEMP2 )

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operaciones de la Teorı́a de Conjuntos

Son las operaciones UNIÓN, INTERSECCIÓN y DIFERENCIA


DE CONJUNTOS (UNION, INTERSECTION y MINUS).
Son operaciones binarias, i.e., reciben como entradas dos
relaciones.
Para poder aplicarlas, las relaciones de entrada deben ser de
unión compatible.

Dos relaciones R(A1 , A2 , . . . , An ) y S(B1 , B2 , . . . , Bn ) se dice que


son de unión compatible si tienen el mismo grado n y si
dom(Ai ) = dom(Bi ) para 1 ≤ i ≤ n. En definitiva, deben tener el
mismo número de atributos sobre los mismos dominios.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Unión, Intersección y Diferencia


Podemos definir las tres operaciones UNIÓN, INTERSECCIÓN Y
DIFERENCIA DE CONJUNTOS en dos relaciones de unión
compatible R y S del siguiente modo:
UNIÓN: El resultado de esta operación, especificada como
R ∪ S (o R UNION S), es una relación que incluye todas las
tuplas que están en R, en S o en ambas. Las tuplas
duplicadas se eliminan.
INTERSECCIÓN: El resultado de esta operación, R ∩ S (o
R INTERSECTION S), es una relación que incluye aquellas
tuplas que están a la vez en ambas R y en S.
DIFERENCIA DE CONJUNTOS: El resultado de esta
operación, R − S (o R MINUS S), es una relación que incluye
todas las tuplas que están en R pero no en S.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Producto Cartesiano
Conocido también como PRODUCTO CRUZADO (CROSS
PRODUCT) o CONCATENACIÓN CRUZADA (CROSS JOIN), que
se identifica por el sı́mbolo × (o bien como R TIMES S).
Se trata también de una operación de conjuntos binarios, aunque
no es necesario que las relaciones en las que se aplica sean una
unión compatible.
Combina cada tupla de una relación con los de la otra.
R(A1 , A2 , . . . , An ) × S(B1 , B2 , . . . , Bm ) es una relación con n + m
atributos Q(A1 , A2 , . . . , An , B1 , B2 , . . . , Bm ).
Q tiene 1 tupla por cada combinación de tuplas de R con S. Ası́, de
R con nR tuplas (|R| = nR ), y S con ns tuplas, R × S tendrá
nR × nS tuplas.
Si hay dos atributos distintos con el mismo nombre x en R y S, se
puede nombrar en Q como R.x y S.x
Luis Valencia Cabrera ([email protected]) Bases de Datos
Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de Producto Cartesiano

CLIENTES
codcli nombre dirección codpostal codpue
333 Sos Carretero, Jesús Mosen Compte, 14 12964 53596
336 Miguel Archilés, Ramón Bernardo Mundina, 132-5 12652 07766
342 Pinel Huerta, Vicente Francisco Sempere, 37-10 12112 07766
345 López Botella, Mauro Avenida del Puerto, 20-1 12010 12309
348 Palau Martı́nez, Jorge Raval de Sant Josep, 97-2 12003 12309
354 Murrı́a Vinaiza, José Ciudadela, 90-18 12003 12309
357 Huguet Peris, Juan Ángel Calle Mestre Rodrigo, 7 12100 12309

PUEBLOS
codpue nombre codpro
07766 Burriana 12
12309 Castellón 12
17859 Enramona 12
46332 Soneja 12
53596 Vila-real 12

Ej: obtener los nombres de los pueblos en los que hay clientes

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de Producto Cartesiano

TEMP1 ← π<codpue> (CLIENTES)


TEMP2 ← TEMP1 × PUEBLOS
TEMP3 ← σ<TEMP1 .codpue=PUEBLOS.codpue> (TEMP2 )
RESULTADO ← π<nombre> (TEMP3 )

TEMP1 PUEBLOS TEMP2


codpue nombre codpro TEMP1 .codpue PUEBLOS.codpue nombre codpro
codpue 07766 Burriana 12 53596 07766 Burriana 12
53596 12309 Castellón 12 53596 12309 Castellón 12
07766 17859 Enramona 12 ... ... ... ...
12309 46332 Soneja 12 53596 53596 Vila-real 12
53596 Vila-real 12 ... ... ... ...

TEMP3 RESULTADO
TEMP1 .codpue PUEBLOS.codpue nombre codpro nombre
53596 53596 Vila-real 12 Vila-real
07766 07766 Burriana 12 Burriana
12309 12309 Castellón 12 Castellón

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operaciones básicas

A las operaciones SELECCIÓN, PROYECCIÓN, PRODUCTO


CARTESIANO, UNIÓN Y DIFERENCIA se les llama operaciones
básicas.

A partir de aquı́, veremos operaciones derivadas, que pueden ser


por tanto obtenidas a partir de las anteriores, pero que conviene
conocer para expresar de forma más ágil determinadas acciones
anidadas.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación CONCATENACIÓN (JOIN)

La CONCATENACIÓN de dos relaciones R(A1 , A2 , . . . , An y


S(B1 , B2 , . . . , Bm ), denotada por R ./CondicionDeConexion S,
es una relación de n + m atributos
Q(A1 , A2 , . . . , Am , B1 , B2 , . . . , Bm ), que contiene una tupla por
cada combinación de tuplas (una de R, otra de S) que satisfaga
una condición de conexión.
La principal diferencia entre el PRODUCTO CARTESIANO y la
CONCATENACIÓN es que en esta última sólo aparecen en el
resultado las combinaciones de tuplas que satisfacen la condición
de conexión, mientras que en el PRODUCTO CARTESIANO se
incluyen todas.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación CONCATENACIÓN (JOIN)

La condición de conexión está especificada sobre los


atributos de las dos relaciones R y S y es evaluada para
cada combinación de tuplas, incluyéndose en la relación Q
resultante en forma de una única tupla combinada sólo
aquéllas cuya condición de conexión se evalúe como
VERDADERO.
Dicha conexión puede incluir cualesquiera operadores de
comparación entre atributos de ambas relaciones (i.e..
{=, <, ≤, >, ≥, 6=}), combinados en expresiones lógicas que
agrupen varias condiciones mediante AND y OR.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

EQUIJOIN y CONCATENACIÓN NATURAL

El uso más habitual de CONCATENACIÓN supone el uso de


condiciones de conexión sólo con comparaciones de igualdad,
en cuyo caso recibe el nombre de EQUIJOIN.
Observe que en el resultado de una EQUIJOIN siempre
tenemos uno o más pares de atributos que cuentan con
valores idénticos en cada tupla.
Ya que uno de estos valores idénticos es innecesario, se creó
una nueva operación llamada CONCATENACIÓN NATURAL
(identificada por ∗) para deshacerse del segundo atributo
superfluo en una condición EQUIJOIN.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de CONCATENACIÓN

CLIENTES
codcli cliente dirección codpostal codpue
333 Sos, Jesús Mosen Compte, 14 12964 53596
336 Miguel, Ramón Bernardo Mundina, 132-5 12652 07766
342 Pinel, Vicente Francisco Sempere, 37-10 12112 07766
345 López, Mauro Avenida del Puerto, 20-1 12010 12309
348 Palau, Jorge Raval de Sant Josep, 97-2 12003 12309
354 Murrı́a, José Ciudadela, 90-18 12003 12309
357 Huguet, Juan Calle Mestre Rodrigo, 7 12100 12309

PUEBLOS
codpue nombre codpro
07766 Burriana 12
12309 Castellón 12
17859 Enramona 12
46332 Soneja 12
53596 Vila-real 12

Obtener los nombres de las poblaciones en la que hay clientes

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de Concatenación

TEMP ← CLIENTES ∗ PUEBLOS


RESULTADO ← π<nombre> (TEMP)
TEMP
codcli cliente dirección codpostal codpue nombre codpro
333 Sos, Jesús Mosen Compte, 14 12964 53596 Vila-real 12
336 Miguel, Ramón Bernardo Mundina, 132-5 12652 07766 Burriana 12
342 Pinel, Vicente Francisco Sempere, 37-10 12112 07766 Burriana 12
345 López, Mauro Avenida del Puerto, 20-1 12010 12309 Castellón 12
348 Palau, Jorge Raval de Sant Josep, 97-2 12003 12309 Castellón 12
354 Murrı́a, José Ciudadela, 90-18 12003 12309 Castellón 12
357 Huguet, Juan Calle Mestre Rodrigo, 7 12100 12309 Castellón 12

RESULTADO
nombre
Vila-real
Burriana
Castellón

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Otros ejemplos de CONCATENACIÓN

Si la condición de conexión es la igualdad de atributos con el


mismo nombre, tenemos la CONCATENACIÓN NATURAL. Si
no tienen el mismo nombre, basta especificar qué atributos
deben ser iguales en ambas relaciones

R ./R.Atributo1=S.Atributo2 S

Por ejemplo: R ./LugarDeNacimiento=LugarDeResidencia S


De hecho, sirve cualquier condición booleana.
Por ejemplo: R ./Sueldo2003<Sueldo2004 S

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación DIVISIÓN
R ÷ S, o bien R DIVIDE BY S

La operación DIVISIÓN, R ÷ S, se aplica a dos relaciones


R(Z ) (grado n) y S(X ) (grado m), con X ⊆ Z (ası́, m < n)).
Si Y = Z − X (Y atributos de R no en S, grado p = n − m),
el resultado de la DIVISIÓN es una relación T (Y ) que
incluye una tupla t = (y1 , . . . , yp ) si para toda tupla
(x1 , . . . , xm ) ∈ S, existe la tupla (x1 , . . . , xm , y1 , . . . , yp ) ∈ R.
En definitiva, para que t aparezca en T , los valores de t
deben aparecer en R en combinación con cada tupla de S.

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Operación DIVISIÓN

La DIVISIÓN R(Z ) ÷ S(X ) puede expresarse como una


secuencia de operaciones π, × y − del siguiente modo:
TEMP1 ← πY (R) donde Y = Z − X
TEMP2 ← πY ((S × TEMP1 ) − R)
RESULTADO ← TEMP1 − TEMP2

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de División

VENDEDORES
codven nombre dirección codpostal codpue codjefe
5 Guillén, Natalia Sant Josep, 110 12597 53596 105
105 Poy, Paloma Tarazona, 103-1 12257 46332 NULL
155 Rubert, Diego Sol, 154 12425 17859 5
455 Agost, Jorge Pasaje, 21-19 12914 53596 5

FACTURAS
codfac fecha codcli codven iva dto
6643 16/07/2010 333 105 18 10
6645 16/07/2010 336 105 0 20
6654 31/07/2010 333 155 8 0
6659 08/08/2010 333 5 0 0
6680 10/09/2010 333 455 8 0
6723 06/11/2010 342 5 18 0
6742 17/12/2010 312 105 8 20

Obtener la lista de los códigos de los clientes que han relizado


compras a todos los vendedores

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Ejemplo de división

TEMP1 ← π<codcli,codven> (FACTURAS)


TEMP2 ← π<codven> (VENDEDORES)
RESULTADO ← TEMP1 ÷ TEMP2

TEMP1 TEMP2 TEMP1 ÷ TEMP2


codcli codven
333 105
codven
336 105
5
333 155 codcli
105
333 5 333
155
333 455
455
342 5
312 105

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Otros operadores

Concatenación externa por la izquierda (LEFT OUTER


JOIN).
Concatenación externa por la derecha (RIGHT OUTER
JOIN).
Concatenación externa completa (FULL OUTER JOIN).
Agrupación o resumen SUMMARIZE
Unión externa OUTER UNION
Proyección generalizada
Cierre recursivo
...

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Índice

1 Introducción
2 Operaciones básicas
3 Operaciones de la Teorı́a de Conjuntos
4 Operaciones derivadas
5 Otros
6 Bibliografı́a

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional
Introducción Operaciones básicas Operaciones de Ta de Conjuntos Operaciones derivadas Otros Bibliografı́a

Bibliografı́a
Ramez Elmasri, Shamkant B. Navathe
Fundamentos de Sistemas de Bases de Datos.
Pearson Educación S.A. - Addison Wesley Quinta Ed. (2007)
ISBN: 978-84-7829-085-7

Mercedes Marqués
Bases de Datos.
Universitat Jaume I (2011)
ISBN: 978-84-693-0146-3

Dolores Cuadra, Elena Castro, Ana Ma Iglesias, Paloma Martı́nez, Fco.


Javier Calle, César de Pablo, Harith Al-Jumaily, Lourdes Moreno, Sonia
Garcı́a Manzano, José Luis Martı́nez, Jesica Rivero, Isabel Segura
Desarrollo De Bases De Datos: Casos Prácticos Desde El Análisis A La
Implementación.
RA-MA Editorial - 2a Edición (2013)
ISBN: 978-84-996-4124-9

Luis Valencia Cabrera ([email protected]) Bases de Datos


Álgebra Relacional

También podría gustarte