DISEÑO DE BASES
DE DATOS RELACIONALES
Álgebra Relacional
Bases de Datos I
MIS. Lizbeth Alejandra Hernández González
Álgebra Relacional
 El primer lenguaje de consulta
 El álgebra relacional forma la base del lenguaje
de consulta SQL ampliamente usado.
 SQL (Structured Query Language)
 El álgebra relacional es un lenguaje de consulta
procedimental.
 Consta de un conjunto de operaciones que
toman como entrada una o dos relaciones y
producen como resultado una nueva relación
2
 Las operaciones fundamentales del álgebra
relacional son selección, proyección, unión,
diferencia de conjuntos, producto cartesiano y
renombramiento.
3
Operaciones unarias
 Operan sobre una relación
 Selección ,
 Proyección,
 Renombramiento
4
Operaciones binarias
 Operan sobre pares de relaciones
 Unión ,
 Diferencia de conjuntos ,
 Producto cartesiano
5
Selección (σ)
 selecciona tuplas que satisfacen un predicado
dado.
 Se utiliza la letra griega sigma minúscula (σ) para
denotar la selección.
σnombre-sucursal = «Navacerrada» (préstamo)
σimporte>1200 (préstamo)
6
Permitidos: =, ≠, <, ≤, > o ≥
 se pueden combinar varios predicados en uno
mayor utilizando las conectivas y (∧) y o (∨).
 para encontrar las tuplas correspondientes a
préstamos de más de 1.200 € concedidos por la
sucursal de Navacerrada, se escribe
σnombre-sucursal = «Navacerrada» ∧ importe>1200 (préstamo)
7
Proyección (Π)
 es una operación unaria que devuelve una
relación de argumentos, excluyendo algunos.
 Dado que las relaciones son conjuntos, se
eliminan todas las filas duplicadas.
 La proyección se denota por la letra griega
mayúscula pi (Π).
8
ejemplo
 la consulta para crear una lista de todos los
números de préstamo y del importe de los
mismos:
Πnúmero-préstamo, importe (préstamo)
9
Composición de operaciones
relacionales
 Considérese la consulta más compleja «Mostrar
los nombres de los clientes que viven en
Peguerinos».
 Habría que escribir:
Πnombre-cliente (σciudad-cliente = «Peguerinos» (cliente))
10
Operación unión (∪)
 Permite unir dos consultas, cuando no puedo
obtener la información sólo de una.
 Considérese una consulta para averiguar el
nombre de todos los clientes del banco que
tienen una cuenta, un préstamo o ambas cosas.
 cliente no contiene esa información
 Necesitamos información de la relación impositor y de
la relación prestatario
11
Modelo relacional del banco
12
 Se conoce la manera de obtener los nombres de
todos los clientes con préstamos en el banco:
Πnombre-cliente (prestatario)
 También se conoce la manera de averiguar el
nombre de los clientes con cuenta en el banco:
Πnombre-cliente (impositor)
 Necesitamos unir estos conjuntos
Πnombre-cliente (prestatario)∪Πnombre-cliente(impositor)
13
Condiciones
 Dado que las relaciones son conjuntos, se
eliminan los valores duplicados.
 se debe asegurar que las uniones se realicen
entre relaciones compatibles.
 para que una operación unión r ∪ s sea válida
hay que exigir que se cumplan dos condiciones:
 1. Las relaciones r y s deben ser de la misma aridad
(mismo número de atributos).
 2. Los dominios de los atributos i-ésimos de r y de s
deben ser iguales para todo i. (mismo tipo)
14

5.-Algebra-Relacional_parte-1.pdf

  • 1.
    DISEÑO DE BASES DEDATOS RELACIONALES Álgebra Relacional Bases de Datos I MIS. Lizbeth Alejandra Hernández González
  • 2.
    Álgebra Relacional  Elprimer lenguaje de consulta  El álgebra relacional forma la base del lenguaje de consulta SQL ampliamente usado.  SQL (Structured Query Language)  El álgebra relacional es un lenguaje de consulta procedimental.  Consta de un conjunto de operaciones que toman como entrada una o dos relaciones y producen como resultado una nueva relación 2
  • 3.
     Las operacionesfundamentales del álgebra relacional son selección, proyección, unión, diferencia de conjuntos, producto cartesiano y renombramiento. 3
  • 4.
    Operaciones unarias  Operansobre una relación  Selección ,  Proyección,  Renombramiento 4
  • 5.
    Operaciones binarias  Operansobre pares de relaciones  Unión ,  Diferencia de conjuntos ,  Producto cartesiano 5
  • 6.
    Selección (σ)  seleccionatuplas que satisfacen un predicado dado.  Se utiliza la letra griega sigma minúscula (σ) para denotar la selección. σnombre-sucursal = «Navacerrada» (préstamo) σimporte>1200 (préstamo) 6
  • 7.
    Permitidos: =, ≠,<, ≤, > o ≥  se pueden combinar varios predicados en uno mayor utilizando las conectivas y (∧) y o (∨).  para encontrar las tuplas correspondientes a préstamos de más de 1.200 € concedidos por la sucursal de Navacerrada, se escribe σnombre-sucursal = «Navacerrada» ∧ importe>1200 (préstamo) 7
  • 8.
    Proyección (Π)  esuna operación unaria que devuelve una relación de argumentos, excluyendo algunos.  Dado que las relaciones son conjuntos, se eliminan todas las filas duplicadas.  La proyección se denota por la letra griega mayúscula pi (Π). 8
  • 9.
    ejemplo  la consultapara crear una lista de todos los números de préstamo y del importe de los mismos: Πnúmero-préstamo, importe (préstamo) 9
  • 10.
    Composición de operaciones relacionales Considérese la consulta más compleja «Mostrar los nombres de los clientes que viven en Peguerinos».  Habría que escribir: Πnombre-cliente (σciudad-cliente = «Peguerinos» (cliente)) 10
  • 11.
    Operación unión (∪) Permite unir dos consultas, cuando no puedo obtener la información sólo de una.  Considérese una consulta para averiguar el nombre de todos los clientes del banco que tienen una cuenta, un préstamo o ambas cosas.  cliente no contiene esa información  Necesitamos información de la relación impositor y de la relación prestatario 11
  • 12.
  • 13.
     Se conocela manera de obtener los nombres de todos los clientes con préstamos en el banco: Πnombre-cliente (prestatario)  También se conoce la manera de averiguar el nombre de los clientes con cuenta en el banco: Πnombre-cliente (impositor)  Necesitamos unir estos conjuntos Πnombre-cliente (prestatario)∪Πnombre-cliente(impositor) 13
  • 14.
    Condiciones  Dado quelas relaciones son conjuntos, se eliminan los valores duplicados.  se debe asegurar que las uniones se realicen entre relaciones compatibles.  para que una operación unión r ∪ s sea válida hay que exigir que se cumplan dos condiciones:  1. Las relaciones r y s deben ser de la misma aridad (mismo número de atributos).  2. Los dominios de los atributos i-ésimos de r y de s deben ser iguales para todo i. (mismo tipo) 14