SlideShare una empresa de Scribd logo
1 de 31
Curso Bases de Datos 1
LENGUAJES DE BASES DE
DATOS:
ÁLGEBRA RELACIONAL
Francisco Moreno
Curso Bases de Datos 2
Álgebra Relacional
• Es un lenguaje formal que permite consultar bases de
datos relacionales
• Conjunto de operadores que toman relaciones como
operandos y retornan una relación como resultado
 Propiedad de cierre  El resultado de un operador
puede ser el operando de otro.
• Es un lenguaje que no es usado directamente por los
desarrolladores: usado para la traducción y
optimización de consultas SQL
• Propuesta por E. F. Codd
Curso Bases de Datos 3
Álgebra Relacional
• Ocho operadores clasificados en dos
grupos:
– Tradicionales de la teoría de conjuntos: Unión,
Intersección, Diferencia y Producto Cartesiano
– Especializados: Restricción (o Selección),
Proyección, Reunión (join) y División
• Operadores adicionales: Renombrado,
Agrupamiento, Derivación (o Extensión)
No traducir join
como unión
Curso Bases de Datos 4
Álgebra Relacional
código nombre edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
código nombre edad
2 Enrique Muñoz 25
8 Jorge Arias 30
10 Juan Martínez 19
ADMINISTRADOR
PRODUCTOR
Sean las relaciones:
Nota: Aquí se
usa el atributo
edad, pero en
una BD se
suele guardar
mas bien la
fecha de
nacimiento
Curso Bases de Datos 5
Álgebra Relacional
• Restricción o Selección (s):
– Genera una relación que
contiene todas las tuplas de una
relación que satisfacen una
condición dada
– La condición se construye
mediante operadores de
comparación (=, <, , , etc.) y
booleanos (AND, OR, etc.)
sCondición(R)
Curso Bases de Datos 6
Álgebra Relacional
• sedad  25(ADMINISTRADOR):
 scódigo < 5(PRODUCTOR):
código nombre edad
1 Jorge Campos 33
2 Enrique Muñoz 25
código nombre edad
2 Enrique Muñoz 25
Curso Bases de Datos 7
Álgebra Relacional:
• Proyección (p):
– Extrae atributos
(columnas) de una relación
– El resultado es una
relación (se eliminan
tuplas repetidas)
pLista atributos(R)
Curso Bases de Datos 8
Álgebra Relacional
• pcódigo, edad(ADMINISTRADOR)
• pcódigo, nombre(PRODUCTOR)
código edad
1 33
2 25
3 21
código nombre
2 Enrique Muñoz
8 Jorge Arias
10 Juan Martínez
Curso Bases de Datos 9
Álgebra Relacional
Sea una relación JUGADOR:
Sea: ppaís(JUGADOR)
Sea: pnom, país(JUGADOR)
JUGADOR
cod nom país
3 Xiu China
8 Juan Perú
2 Juan Perú
país
China
Perú
Note que se eliminan tuplas repetidas
nom país
Xiu China
Juan Perú
Curso Bases de Datos 10
Álgebra Relacional
• Producto Cartesiano: R1 X R2
– Retorna una relación que contiene todas las tuplas
resultantes de la combinación de cada tupla de R1
con cada tupla de R2
– La cabecera de la relación resultante es la unión
de las cabeceras de R1 y R2
– Para hacer el producto cartesiano, las cabeceras
de R1 y R2 no pueden tener nombres de atributos
iguales ¿por qué? Si las cabeceras tienen nombres
de atributos iguales se debe usar un alias
mediante el operador de renombrado r (más
adelante se explica este operador)
Curso Bases de Datos 11
Álgebra Relacional
ADMINISTRADOR X rPRO(cod,nom,ed) (pcódigo,nombre,edad(PRODUCTOR))
código nombre edad cod nom ed
1 Jorge Campos 33 2 Enrique Muñoz 25
1 Jorge Campos 33 8 Jorge Arias 30
1 Jorge Campos 33 10 Juan Martínez 19
2 Enrique Muñoz 25 2 Enrique Muñoz 25
2 Enrique Muñoz 25 8 Jorge Arias 30
2 Enrique Muñoz 25 10 Juan Martínez 19
3 Esteban Paz 21 2 Enrique Muñoz 25
3 Esteban Paz 21 8 Jorge Arias 30
3 Esteban Paz 21 10 Juan Martínez 19
Renombrado temporal
de los atributos
Renombrado temporal
de la relación
Operador de renombrado
Curso Bases de Datos 12
Álgebra Relacional
• Unión: R1  R2
– Retorna una relación que
contiene todas la tuplas de
R1 y de R2 (se eliminan
tuplas repetidas)
– Las relaciones deben tener
cabecera idéntica para que
sean compatibles para la
unión
Curso Bases de Datos 13
Álgebra Relacional
• ADMINISTRADOR  PRODUCTOR:
código nombre edad
1 Jorge Campos 33
2 Enrique Muñoz 25
3 Esteban Paz 21
8 Jorge Arias 30
10 Juan Martínez 19
Solo aparece
una vez
Curso Bases de Datos 14
Álgebra Relacional
• Intersección: R1  R2
– Retorna una relación que
contiene todas las tuplas que
aparecen tanto en R1 como
en R2
– Las relaciones deben tener
cabecera idéntica para que
sean compatibles para la
intersección
Curso Bases de Datos 15
Álgebra Relacional
• ADMINISTRADOR  PRODUCTOR:
código nombre edad
2 Enrique Muñoz 25
Curso Bases de Datos 16
Álgebra Relacional
• Diferencia: R1 - R2
– Retorna una relación que
contiene todas las tuplas
que aparecen en R1 pero no
en R2 (tuplas idénticas)
– Las relaciones deben tener
cabecera idéntica para que
sean compatibles para la
diferencia
Curso Bases de Datos 17
Álgebra Relacional
• ADMINISTRADOR - PRODUCTOR:
• PRODUCTOR - ADMINISTRADOR:
código nombre edad
1 Jorge Campos 33
3 Esteban Paz 21
código nombre edad
8 Jorge Arias 30
10 Juan Martínez 19
Curso Bases de Datos 18
• La unión, intersección y producto cartesiano
son conmutativas y asociativas
• La diferencia no es conmutativa ni
asociativa
• La intersección no es un operador primitivo
ya que se puede expresar mediante la
diferencia
Curso Bases de Datos 19
Álgebra Relacional
• Reunión (join): Tiene varias modalidades:
– Reunión natural (natural join): R1 ⋈ R2
Sea R1(A,B) y R2 (B,C). El resultado de R1 ⋈ R2
es una relación con cabecera (A,B,C) donde cada
tupla de R1 se combina con cada tupla de R2
siempre y cuando tengan el mismo valor en el
atributo en común (B).
A, B y C pueden ser atributos compuestos.
No traducirla al español como unión
Curso Bases de Datos 20
Álgebra Relacional
código nombre edad depto
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
depto descripción
1 Administración
2 Producción
3 Ventas
4 Finanzas
EMPLEADO
DEPARTAMENTO
Atributo de
join
Nota: En este ejemplo, el campo
depto en EMPLEADO no es CF
con respecto a la relación
DEPARTAMENTO
Curso Bases de Datos 21
Álgebra Relacional
• EMPLEADO ⋈ DEPARTAMENTO:
código nombre edad depto descripción
1 Jorge Campos 33 1 Administración
2 Enrique Muñoz 25 1 Administración
3 Esteban Paz 21 1 Administración
8 Jorge Arias 30 2 Producción
10 Juan Martínez 19 2 Producción
Curso Bases de Datos 22
Álgebra Relacional
– Semi reunión (semi join): R1⊳ R2:
• Similar a la reunión natural pero solo se
muestran los atributos de la relación de la
izquierda  ¿Utilidad?
– Reunión Theta (theta join): R1 QCondición R2
• Equivale a: sCondición (R1 X R2)
• El operador de comparación usado en la
condición no es el “=“ de la reunión natural sino
alguno de los siguientes: “>“, “<“, “>=“, “<=“,
“≠“
Curso Bases de Datos 23
Álgebra Relacional
• EMPLEADO Qdepto > dep rDEPT(dep,desc)
(p(depto,descripción)(DEPARTAMENTO)
)
código nombre edad depto dep desc
8 Jorge Arias 30 2 1 Administración
10 Juan Martínez 19 2 1 Administración
12 Anselmo Rodas 28 6 1 Administración
12 Anselmo Rodas 28 6 2 Producción
12 Anselmo Rodas 28 6 3 Ventas
12 Anselmo Rodas 28 6 4 Finanzas
Curso Bases de Datos 24
Álgebra Relacional
• División: R1  R2
Sean las relaciones R1(A,B) y R2(B). El
resultado de R1  R2 es una relación con el
atributo A
• Un valor a  A hace parte del resultado de la
división si a está en R1 combinado con cada
valor  B que aparece en R2
• A y B pueden ser atributos compuestos
Álgebra Relacional
Curso Bases de Datos 25
codartista nomgénero
45 Soul
45 Pop
45 Dance
8 Soul
8 Pop
23 Dance
ARTISTAYGENERO GÉNERO
nomgénero
Soul
Pop
Dance
Álgebra Relacional
• ARTISTAYGENERO GÉNERO
Curso Bases de Datos 26
codartista
45
Ya que en este caso solo el artista 45 está
combinado con todos los géneros que
aparecen en la relación GÉNERO
Curso Bases de Datos 27
Álgebra Relacional
Operadores adicionales:
Asignación: VbleRelacion ← Relación
r: Renombra atributos y el nombre de
la relación:
rNUEVONOMBRERELACIÓN(atributos renombrados)(p(atributos)(R))
Nota: El renombrado no es definitivo, este solo tiene efecto
durante la expresión del álgebra relacional.
Curso Bases de Datos
28
Álgebra Relacional
Ģ: Operador de agrupamiento. Funciones de grupo:
SUM(), AVG(), MAX(), MIN(), COUNT()
Lista atributos de agrupamientoĢLista valores agregados(R)
Ej. Sea:
código nombre edad depto
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
¿Qué hace la siguiente consulta?
deptoĢCOUNT(código) AS conteo(EMP)
Renombrado
del valor agregado
EMP
Valor agregado: función de grupo aplicada a
un atributo, cada uno con su renombrado
Curso Bases de Datos 29
Álgebra Relacional
cod género país salario
1 m China 100
2 m UK 200
4 m China 100
3 f China 300
8 f China 100
9 m UK 50
23 f China 100
país, géneroĢSUM (salario) AS total, COUNT(cod)
AS cuantos (TRABAJADOR)
TRABAJADOR
país género total cuantos
China m 200 2
UK m 250 2
China f 500 3
Curso Bases de Datos 30
Álgebra Relacional
• Derivación:
EXTEND R ADD Lista cálculos AS Lista atributos
código nombre sal bono
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
EMP
Ejemplo: EXTEND EMP ADD sal+bono AS totsal
Curso Bases de Datos 31
Álgebra Relacional
• Se genera una relación como la original pero
con un atributo totsal adicional:
código nombre sal bono
1 Jorge Campos 33 1
2 Enrique Muñoz 25 1
3 Esteban Paz 21 1
8 Jorge Arias 30 2
10 Juan Martínez 19 2
12 Anselmo Rodas 28 6
totsal
34
26
22
32
21
34
¿Qué hace la siguiente consulta?
Ej: EXTEND EMP ADD 1 AS num, ‘Hola’AS mensaje
La relación
original
permanece
intacta

Más contenido relacionado

Similar a Pres10BDI.ppt

Ud2 el modelo relacional
Ud2  el modelo relacionalUd2  el modelo relacional
Ud2 el modelo relacionalLesli Pacheco
 
Pb operaciones modelorelacional_gris
Pb operaciones modelorelacional_grisPb operaciones modelorelacional_gris
Pb operaciones modelorelacional_grisGotham Trix
 
PresentacióN Tema 8
PresentacióN Tema 8PresentacióN Tema 8
PresentacióN Tema 8Andalucia
 
Algebra y calculo relacional
Algebra y calculo relacionalAlgebra y calculo relacional
Algebra y calculo relacionalAlbert Sinergy
 
El modelo relacional
El modelo relacionalEl modelo relacional
El modelo relacionalLuis Jherry
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacionalMaria Garcia
 
Tema4 algebra relacional
Tema4   algebra relacionalTema4   algebra relacional
Tema4 algebra relacionalAlvaro Loustau
 
Decima sesion gestion de datos e informacion i
Decima sesion gestion de  datos  e  informacion  iDecima sesion gestion de  datos  e  informacion  i
Decima sesion gestion de datos e informacion ijanethmallqui
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacionalLuis Jherry
 
2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacion2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacionM.c. Omar Jasso
 
Sistema de gestion de base de datos ESPAM.pptx
Sistema de gestion de base de datos ESPAM.pptxSistema de gestion de base de datos ESPAM.pptx
Sistema de gestion de base de datos ESPAM.pptxLuisRiofrioLopez
 
BASES DE DATOS CL2 para PPT.pdf
BASES DE DATOS CL2 para PPT.pdfBASES DE DATOS CL2 para PPT.pdf
BASES DE DATOS CL2 para PPT.pdfAbisSanMartin1
 
04.02 Potencias Y Logaritmos
04.02 Potencias Y Logaritmos04.02 Potencias Y Logaritmos
04.02 Potencias Y Logaritmospitipoint
 

Similar a Pres10BDI.ppt (20)

cc302modulo3
cc302modulo3cc302modulo3
cc302modulo3
 
Ud2 el modelo relacional
Ud2  el modelo relacionalUd2  el modelo relacional
Ud2 el modelo relacional
 
Pb operaciones modelorelacional_gris
Pb operaciones modelorelacional_grisPb operaciones modelorelacional_gris
Pb operaciones modelorelacional_gris
 
Bd algebra relacional
Bd algebra relacionalBd algebra relacional
Bd algebra relacional
 
presentacion
presentacionpresentacion
presentacion
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
clase 3-MODELO RELACIONAL.ppt
clase 3-MODELO RELACIONAL.pptclase 3-MODELO RELACIONAL.ppt
clase 3-MODELO RELACIONAL.ppt
 
5 modelo relacional
5 modelo relacional5 modelo relacional
5 modelo relacional
 
PresentacióN Tema 8
PresentacióN Tema 8PresentacióN Tema 8
PresentacióN Tema 8
 
Algebra y calculo relacional
Algebra y calculo relacionalAlgebra y calculo relacional
Algebra y calculo relacional
 
El modelo relacional
El modelo relacionalEl modelo relacional
El modelo relacional
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Tema4 algebra relacional
Tema4   algebra relacionalTema4   algebra relacional
Tema4 algebra relacional
 
7 ar
7 ar7 ar
7 ar
 
Decima sesion gestion de datos e informacion i
Decima sesion gestion de  datos  e  informacion  iDecima sesion gestion de  datos  e  informacion  i
Decima sesion gestion de datos e informacion i
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacion2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacion
 
Sistema de gestion de base de datos ESPAM.pptx
Sistema de gestion de base de datos ESPAM.pptxSistema de gestion de base de datos ESPAM.pptx
Sistema de gestion de base de datos ESPAM.pptx
 
BASES DE DATOS CL2 para PPT.pdf
BASES DE DATOS CL2 para PPT.pdfBASES DE DATOS CL2 para PPT.pdf
BASES DE DATOS CL2 para PPT.pdf
 
04.02 Potencias Y Logaritmos
04.02 Potencias Y Logaritmos04.02 Potencias Y Logaritmos
04.02 Potencias Y Logaritmos
 

Último

Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaSilvia García
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfluisccollana
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosssuser948499
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitariachayananazcosimeon
 
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfCritica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfRodrigoBenitez38
 
Qué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaQué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaJoellyAlejandraRodrg
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdfAnaBelindaArmellonHi
 
Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...israel garcia
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfIrapuatoCmovamos
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalIngrid459352
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfIrapuatoCmovamos
 
obras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffobras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffJefersonBazalloCarri1
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,juberrodasflores
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechojuliosabino1
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfJC Díaz Herrera
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria deCalet Cáceres Vergara
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticJamithGarcia1
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicaciónJonathanAntonioMaldo
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresamerca6
 
triptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciatriptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciaferg6120
 

Último (20)

Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y química
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datos
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
 
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfCritica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
 
Qué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaQué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problema
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
 
Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...Cuáles son las características biológicas que están marcadas en tu individual...
Cuáles son las características biológicas que están marcadas en tu individual...
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dental
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
 
obras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffobras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffff
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derecho
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria de
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicación
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresa
 
triptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciatriptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescencia
 

Pres10BDI.ppt

  • 1. Curso Bases de Datos 1 LENGUAJES DE BASES DE DATOS: ÁLGEBRA RELACIONAL Francisco Moreno
  • 2. Curso Bases de Datos 2 Álgebra Relacional • Es un lenguaje formal que permite consultar bases de datos relacionales • Conjunto de operadores que toman relaciones como operandos y retornan una relación como resultado  Propiedad de cierre  El resultado de un operador puede ser el operando de otro. • Es un lenguaje que no es usado directamente por los desarrolladores: usado para la traducción y optimización de consultas SQL • Propuesta por E. F. Codd
  • 3. Curso Bases de Datos 3 Álgebra Relacional • Ocho operadores clasificados en dos grupos: – Tradicionales de la teoría de conjuntos: Unión, Intersección, Diferencia y Producto Cartesiano – Especializados: Restricción (o Selección), Proyección, Reunión (join) y División • Operadores adicionales: Renombrado, Agrupamiento, Derivación (o Extensión) No traducir join como unión
  • 4. Curso Bases de Datos 4 Álgebra Relacional código nombre edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21 código nombre edad 2 Enrique Muñoz 25 8 Jorge Arias 30 10 Juan Martínez 19 ADMINISTRADOR PRODUCTOR Sean las relaciones: Nota: Aquí se usa el atributo edad, pero en una BD se suele guardar mas bien la fecha de nacimiento
  • 5. Curso Bases de Datos 5 Álgebra Relacional • Restricción o Selección (s): – Genera una relación que contiene todas las tuplas de una relación que satisfacen una condición dada – La condición se construye mediante operadores de comparación (=, <, , , etc.) y booleanos (AND, OR, etc.) sCondición(R)
  • 6. Curso Bases de Datos 6 Álgebra Relacional • sedad  25(ADMINISTRADOR):  scódigo < 5(PRODUCTOR): código nombre edad 1 Jorge Campos 33 2 Enrique Muñoz 25 código nombre edad 2 Enrique Muñoz 25
  • 7. Curso Bases de Datos 7 Álgebra Relacional: • Proyección (p): – Extrae atributos (columnas) de una relación – El resultado es una relación (se eliminan tuplas repetidas) pLista atributos(R)
  • 8. Curso Bases de Datos 8 Álgebra Relacional • pcódigo, edad(ADMINISTRADOR) • pcódigo, nombre(PRODUCTOR) código edad 1 33 2 25 3 21 código nombre 2 Enrique Muñoz 8 Jorge Arias 10 Juan Martínez
  • 9. Curso Bases de Datos 9 Álgebra Relacional Sea una relación JUGADOR: Sea: ppaís(JUGADOR) Sea: pnom, país(JUGADOR) JUGADOR cod nom país 3 Xiu China 8 Juan Perú 2 Juan Perú país China Perú Note que se eliminan tuplas repetidas nom país Xiu China Juan Perú
  • 10. Curso Bases de Datos 10 Álgebra Relacional • Producto Cartesiano: R1 X R2 – Retorna una relación que contiene todas las tuplas resultantes de la combinación de cada tupla de R1 con cada tupla de R2 – La cabecera de la relación resultante es la unión de las cabeceras de R1 y R2 – Para hacer el producto cartesiano, las cabeceras de R1 y R2 no pueden tener nombres de atributos iguales ¿por qué? Si las cabeceras tienen nombres de atributos iguales se debe usar un alias mediante el operador de renombrado r (más adelante se explica este operador)
  • 11. Curso Bases de Datos 11 Álgebra Relacional ADMINISTRADOR X rPRO(cod,nom,ed) (pcódigo,nombre,edad(PRODUCTOR)) código nombre edad cod nom ed 1 Jorge Campos 33 2 Enrique Muñoz 25 1 Jorge Campos 33 8 Jorge Arias 30 1 Jorge Campos 33 10 Juan Martínez 19 2 Enrique Muñoz 25 2 Enrique Muñoz 25 2 Enrique Muñoz 25 8 Jorge Arias 30 2 Enrique Muñoz 25 10 Juan Martínez 19 3 Esteban Paz 21 2 Enrique Muñoz 25 3 Esteban Paz 21 8 Jorge Arias 30 3 Esteban Paz 21 10 Juan Martínez 19 Renombrado temporal de los atributos Renombrado temporal de la relación Operador de renombrado
  • 12. Curso Bases de Datos 12 Álgebra Relacional • Unión: R1  R2 – Retorna una relación que contiene todas la tuplas de R1 y de R2 (se eliminan tuplas repetidas) – Las relaciones deben tener cabecera idéntica para que sean compatibles para la unión
  • 13. Curso Bases de Datos 13 Álgebra Relacional • ADMINISTRADOR  PRODUCTOR: código nombre edad 1 Jorge Campos 33 2 Enrique Muñoz 25 3 Esteban Paz 21 8 Jorge Arias 30 10 Juan Martínez 19 Solo aparece una vez
  • 14. Curso Bases de Datos 14 Álgebra Relacional • Intersección: R1  R2 – Retorna una relación que contiene todas las tuplas que aparecen tanto en R1 como en R2 – Las relaciones deben tener cabecera idéntica para que sean compatibles para la intersección
  • 15. Curso Bases de Datos 15 Álgebra Relacional • ADMINISTRADOR  PRODUCTOR: código nombre edad 2 Enrique Muñoz 25
  • 16. Curso Bases de Datos 16 Álgebra Relacional • Diferencia: R1 - R2 – Retorna una relación que contiene todas las tuplas que aparecen en R1 pero no en R2 (tuplas idénticas) – Las relaciones deben tener cabecera idéntica para que sean compatibles para la diferencia
  • 17. Curso Bases de Datos 17 Álgebra Relacional • ADMINISTRADOR - PRODUCTOR: • PRODUCTOR - ADMINISTRADOR: código nombre edad 1 Jorge Campos 33 3 Esteban Paz 21 código nombre edad 8 Jorge Arias 30 10 Juan Martínez 19
  • 18. Curso Bases de Datos 18 • La unión, intersección y producto cartesiano son conmutativas y asociativas • La diferencia no es conmutativa ni asociativa • La intersección no es un operador primitivo ya que se puede expresar mediante la diferencia
  • 19. Curso Bases de Datos 19 Álgebra Relacional • Reunión (join): Tiene varias modalidades: – Reunión natural (natural join): R1 ⋈ R2 Sea R1(A,B) y R2 (B,C). El resultado de R1 ⋈ R2 es una relación con cabecera (A,B,C) donde cada tupla de R1 se combina con cada tupla de R2 siempre y cuando tengan el mismo valor en el atributo en común (B). A, B y C pueden ser atributos compuestos. No traducirla al español como unión
  • 20. Curso Bases de Datos 20 Álgebra Relacional código nombre edad depto 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 depto descripción 1 Administración 2 Producción 3 Ventas 4 Finanzas EMPLEADO DEPARTAMENTO Atributo de join Nota: En este ejemplo, el campo depto en EMPLEADO no es CF con respecto a la relación DEPARTAMENTO
  • 21. Curso Bases de Datos 21 Álgebra Relacional • EMPLEADO ⋈ DEPARTAMENTO: código nombre edad depto descripción 1 Jorge Campos 33 1 Administración 2 Enrique Muñoz 25 1 Administración 3 Esteban Paz 21 1 Administración 8 Jorge Arias 30 2 Producción 10 Juan Martínez 19 2 Producción
  • 22. Curso Bases de Datos 22 Álgebra Relacional – Semi reunión (semi join): R1⊳ R2: • Similar a la reunión natural pero solo se muestran los atributos de la relación de la izquierda  ¿Utilidad? – Reunión Theta (theta join): R1 QCondición R2 • Equivale a: sCondición (R1 X R2) • El operador de comparación usado en la condición no es el “=“ de la reunión natural sino alguno de los siguientes: “>“, “<“, “>=“, “<=“, “≠“
  • 23. Curso Bases de Datos 23 Álgebra Relacional • EMPLEADO Qdepto > dep rDEPT(dep,desc) (p(depto,descripción)(DEPARTAMENTO) ) código nombre edad depto dep desc 8 Jorge Arias 30 2 1 Administración 10 Juan Martínez 19 2 1 Administración 12 Anselmo Rodas 28 6 1 Administración 12 Anselmo Rodas 28 6 2 Producción 12 Anselmo Rodas 28 6 3 Ventas 12 Anselmo Rodas 28 6 4 Finanzas
  • 24. Curso Bases de Datos 24 Álgebra Relacional • División: R1  R2 Sean las relaciones R1(A,B) y R2(B). El resultado de R1  R2 es una relación con el atributo A • Un valor a  A hace parte del resultado de la división si a está en R1 combinado con cada valor  B que aparece en R2 • A y B pueden ser atributos compuestos
  • 25. Álgebra Relacional Curso Bases de Datos 25 codartista nomgénero 45 Soul 45 Pop 45 Dance 8 Soul 8 Pop 23 Dance ARTISTAYGENERO GÉNERO nomgénero Soul Pop Dance
  • 26. Álgebra Relacional • ARTISTAYGENERO GÉNERO Curso Bases de Datos 26 codartista 45 Ya que en este caso solo el artista 45 está combinado con todos los géneros que aparecen en la relación GÉNERO
  • 27. Curso Bases de Datos 27 Álgebra Relacional Operadores adicionales: Asignación: VbleRelacion ← Relación r: Renombra atributos y el nombre de la relación: rNUEVONOMBRERELACIÓN(atributos renombrados)(p(atributos)(R)) Nota: El renombrado no es definitivo, este solo tiene efecto durante la expresión del álgebra relacional.
  • 28. Curso Bases de Datos 28 Álgebra Relacional Ģ: Operador de agrupamiento. Funciones de grupo: SUM(), AVG(), MAX(), MIN(), COUNT() Lista atributos de agrupamientoĢLista valores agregados(R) Ej. Sea: código nombre edad depto 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 ¿Qué hace la siguiente consulta? deptoĢCOUNT(código) AS conteo(EMP) Renombrado del valor agregado EMP Valor agregado: función de grupo aplicada a un atributo, cada uno con su renombrado
  • 29. Curso Bases de Datos 29 Álgebra Relacional cod género país salario 1 m China 100 2 m UK 200 4 m China 100 3 f China 300 8 f China 100 9 m UK 50 23 f China 100 país, géneroĢSUM (salario) AS total, COUNT(cod) AS cuantos (TRABAJADOR) TRABAJADOR país género total cuantos China m 200 2 UK m 250 2 China f 500 3
  • 30. Curso Bases de Datos 30 Álgebra Relacional • Derivación: EXTEND R ADD Lista cálculos AS Lista atributos código nombre sal bono 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 EMP Ejemplo: EXTEND EMP ADD sal+bono AS totsal
  • 31. Curso Bases de Datos 31 Álgebra Relacional • Se genera una relación como la original pero con un atributo totsal adicional: código nombre sal bono 1 Jorge Campos 33 1 2 Enrique Muñoz 25 1 3 Esteban Paz 21 1 8 Jorge Arias 30 2 10 Juan Martínez 19 2 12 Anselmo Rodas 28 6 totsal 34 26 22 32 21 34 ¿Qué hace la siguiente consulta? Ej: EXTEND EMP ADD 1 AS num, ‘Hola’AS mensaje La relación original permanece intacta