Ejemplos lgebra Relacional - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Ejemplos lgebra Relacional

Description:

P5 Leva Azul 12 Par s. P6 Rueda Rojo 19 Londres. CP. CP. Ciudad de. origen de. la parte ... (p P# (s Color= Rojo' (P)) 11/4/09. Curso Bases de Datos. 5 ... – PowerPoint PPT presentation

Number of Views:94
Avg rating:3.0/5.0
Slides: 17
Provided by: carlosmari
Category:

less

Transcript and Presenter's Notes

Title: Ejemplos lgebra Relacional


1
Ejemplos Álgebra Relacional
  • Francisco Moreno

2
CP
  • S
  • S Snombre Situacion Ciudad
  • S1 Salazar 20 Londres
  • S2 Jaramillo 10 París
  • S3 Bernal 30 París
  • S4 Caicedo 20 Londres
  • S5 Aldana 30 Atenas
  • P
  • P Pnombre Color Peso Ciudad
  • P1 Tuerca Rojo 12 Londres
  • P2 Perno Verde 17 París
  • P3 Tornillo Azul 17 Roma
  • P4 Tornillo Rojo 14 Londres
  • P5 Leva Azul 12 París
  • P6 Rueda Rojo 19 Londres

CP
Ciudad de origen de la parte
3
CF hacia P
  • SP
  • S P Cantidad
  • S1 P1 300
  • S1 P2 200
  • S1 P3 400
  • S1 P4 200
  • S1 P5 100
  • S1 P6 100
  • S2 P1 300
  • S2 P2 400
  • S3 P3 200
  • S4 P2 200
  • S4 P4 300
  • S4 P5 400

CF hacia S
CP
4
  • Obtener los nombres de los proveedores que
    suministran la parte P2.
  • p Snombre (S ? (s P P2 (SP) ) )
  • Obtener los nombres de los proveedores que
    suministran por lo menos una parte roja
  • p Snombre(S ? (p S (SP ?
  • (p P (s
    Color Rojo (P))
  • )
  • )
  • )

5
  • La consulta anterior mediante asignaciones para
    darle mayor claridad
  • 1. T1 ? p P (s Color Rojo (P))
  • 2. T2 ? (p S (SP ? T1) )
  • 3. p Snombre(S ? T2)

6
  • Obtener los nombres de los proveedores que
    suministran todas las partes
  • 1 Se obtiene el listado de todas las partes
  • T1 ? p P (P)
  • 2 Se obtienen las partes que suministra cada
    proveedor
  • T2 ? p S,P (SP)
  • 3 Se realiza la división
  • T3 ? T2 T1

7
  • 4 Se ejecuta el join
  • Snombre (S ? T3)
  • Colocando todo en una sola expresión
  • Snombre (S ? ( (p S,P (SP))
  • ( p P (P))
  • )
  • )
  • Ejercicio Realizar este mismo problema sin usar
  • en ningún momento

8
  • Obtener los códigos de los proveedores que
    suministran al menos todas las partes
    suministradas por el proveedor S2.
  • 1 Se obtienen las partes que suministra S2
  • T1 ? p P (s S S2 (SP))
  • 2 Se realiza la división
  • (p S,P (SP)) T1
  • En una sola expresión
  • (p S,P (SP)) p P (s S S2 (SP))

9
  • Ojo Cuál es el resultado de?
  • SP p P ((s S S2 (SP))
  • es decir SP T1
  • Cómo se evita que el mismo S2 salga en la
    respuesta?
  • (p S,P (s S ? S2 SP))
  • p P ((s S S2 (SP))

10
  • Obtener los nombres de los proveedores que NO
    suministran la parte P2.
  • Será esta la respuesta?
  • p Snombre (S ?
  • (p S (s P ? P2 (SP))
  • )
  • Entonces, cómo proceder?

11
  • 1 Se obtienen los proveedores que SI suministran
    la parte P2
  • T1 ? p S (s P P2 (SP))
  • 2 Se realiza la diferencia
  • T2 ? p S (S) T1
  • 3 Ahora un join para obtener el nombre
  • p Snombre (S ? T2)

12
  • En una sola expresión
  • snombre (S ?
  • (p S (S)
  • (p S (s P P2
    (SP)))
  • )
  • )

13
  • Obtener todos los pares de proveedores tales que
    los 2 proveedores estén cosituados, es decir,
    ubicados en la misma ciudad.
  • 1 Se requiere realizar un producto de la tabla
    consigo misma, renombramos entonces
  • T1 ? ? S(Saux,City) (p S,Ciudad (S))
  • 2 Sea T2 ? p S,Ciudad (S)
  • 3 T3 ? T1 x T2
  • 4 p S,Saux (s Ciudad City (T3))
  • Cómo eliminar las parejas redundantes?
  • Ejercicio Realizarlo con join en vez de producto

14
  • Obtener el código y el número de partes que
    suministra cada proveedor
  • S G Count(P) AS conteo (SP)
  • Obtener el nombre y la cantidad total de partes
    que suministra cada proveedor
  • Snombre,Total (S ? (S G Sum(Cantidad) AS Total
    (SP)))

15
  • Obtener las ciudades de donde provienen más de 4
    partes rojas.
  • 1 Se obtienen las partes rojas
  • T1 ? s Color Rojo (P)
  • 2 Se obtiene el total de partes rojas de cada
    ciudad y se le da un nombre al conteo
    (alternativamente al operador AS se usa ?)
  • T2 ? ? C(City, rojas) (Ciudad GCount(P) (T1) )
  • 3 Se realiza la restricción final
  • p City (s rojas gt 4 (T2))

16
  • Ejercicio Obtener las ciudades de donde
    provienen menos de 4 partes rojas.
  • Es la solución de este problema simplemente
    cambiar el operador gt por lt ?

Ojo Tener cuidado con las ciudades de
las cuales no proviene ni una sola
parte roja
Write a Comment
User Comments (0)
About PowerShow.com