Está en la página 1de 3

Algebra Relacional

gerson

September 13, 2016

1 pregunta1
a. encontrar todas las pizzerias frecuentadas por al menos una persona
menor de 18
Πpizzeria (σedad<18 (P ersona ./ F recuenta))

b. encontrar los nombres de todas las mujeres que comen pizza de mush-
room o de pepperoni(o ambas).
Πnombre (σgenero=”mujer” (σpizza=”mushroom” (P essona ./ Come)))∪Πnombre (σgenero=”mujer” (σpizza=”pepe
Come)))

c. encontrar los nombres de todas las mujeres que comen pizza de mush-
room y de pepperoni.

Πnombre (σgenero=”mujer” (σpizza=”mushroom” (P essona ./ Come)))∩Πnombre (σgenero=”mujer” (σpizza=”


Come)))

d. Encontrar todas las pizzerias que sirven al menos una pizza que amy
come por menos de 10.00
Πpizzeria (σprecio<10 (σnombre=”amy” ((P ersona ./ Come) ./ sirve)))

e. Encontrar todas las pizzerias que son frecuentadas solo por mujeres o
solo por varones.
A=Πpizzeria (σgenero=”mujer” (P ersona ./ F recuenta))
B=Πpizzeria (σgenero=”hombre” (P ersona ./ (A ./ F recuenta))
C=Πpizzeria (σgenero=”hombre” (P ersona ./ F recuenta))
D=Πpizzeria (σgenero=”mujer” (P ersona ./ (C ./ F recuenta)
(A − B) ∪ (C − D)

f. Encuentre los nombres de las personas que comen al menos una pizza
servida por una pizzeria pero,pero que no frecuentan esa pizzeria
A=Πnombre (σpizzeria=”xx” ((P ersona ./ come) ./ Sirve))

1
B=Πnombre (σpizzeria=”xx” ((P ersona ./ F recuenta) ./ Sirve)

g. Encontrar los nombres de todas las personas que frecuentan solo pizze-
rias que sirven al menos una pizza que ellos comen.
Πnombre ((F recuenta ./ come) ./ sirve)

h. Encontrar el nombre de las personas que frecuentan cada pizzeria que


sirven al menos una pizza que ellos comen.
Πname (P ersona)−Πnombre (Πnombre.pizzeria(comida ./ sirve)−F recuenta)

i. Encontrar la pizzeria que sirve la pizza pepperoni mas barata.en caso de


empate ,retornar la pizza pepperoni mas baratas.
A=(σpizza=”pepperoni” (Sirve))
Πpizzeria (σprecio=min(πprecio(A) ) (A)

2 pregunta 2
Considerar el esquema con dos relaciones, R(A, B) y S(B, C), donde todos
los valores son enteros. Considerar las siguientes 3 expresiones de relaciones
algebraicas:
a) ΠA,C (R ./ σB=1 S)

b) ΠA (σB R) × ΠC (σB = 1S)


c) ΠA, C(ΠAR × σB=1 S)
Dos de tres expresiones son equivalentes (por ejemplo, produce la misma
respuesta en todas las bases de datos), mientras una de ellas puede producir
una repuesta diferente. Cual de los queries puede producir una repuesta
diferente? Brindar la más simple instancia de la base de datos que Ud.
pueda pensar donde una diferente respuesta pueda producirse.
solucion :
la imformacion en c es diferente por ejemplo tenemos R=3,4 Y S=1,2 la
imformacion a y b producen resultado vacio mientras que (c) produce 3,2

3 pregunta 3
Considerar una relación R(A, B) que contiene r tuplas, y una relación S(B,
C) que contiene s tuplas; asumir r ¿ 0 y s ¿ 0. Para cada una de las sigu-
ientes expresiones de relaciones algebraicas, establecer en términos de r y s
el máximo y mı́nimo numero de tuplas que podrı́a estar en el resultado de

2
la expresión.

a. R ∪ SρS(A,B) el max=s+r,min=0

b. ΠA,C (R ./ S) el max=sxr, min=0

c. ΠB R − (ΠB R − ΠS R) el max=r,min=0

d. (R ./ R) ./ R max = r3 min=1

e. σA>B R ∪ σA<B R max=s,min=0

4 pregunta 4
E1 n E2 = Πschema(E1) E1 ./ E2
E1 B E2 = E1 − Πschema(E1) E1 ./ E2
O E1 B E2 = E1 − (E1 n E2)

5 pregunta 5
Considerar una relación Temp(regionID, nombre, alto, bajo) que registra his-
torial de altos y bajas temperaturas de varias regiones. Las regions tienen
nombres, pero están identificadas por regionID, que es la clave primaria.
Considerar el siguiente query, que usa la introducción de notación linear.
T1(rID,h)=ΠregionID,high T emp esto nos retorna el ID de las regiones con
alta temperatura
T2(rID,h)=ΠregionID,low T emp esto nos retorna el ID de las regiones con baja
temperatura
T3(rID)=ΠrID (T 1 ./ T emph<high ) esto nos retorna temperaturas menores
que la alta
T4(rID)=ΠrID (T 1 ./ T empl<low ) esto nos retorna temperaturas menores
que la baja
T5(regionID)=ΠrID T emp − T 3 esto nos retorna el ID de las temperaturas
mas altas
T6(regionID)=ΠrID T emp − T 4 esto nos retorna el ID de las temperaturas
mas bajas
Result(n)=Πname (T emp ./ (T 5 ∪ T 6))
Result2(n)=Πname (T emp ./ (T 5 ∩ T 6))
Esto dos nos retornan los nombres de las regiones con temperatura mas alta
y/o temperatura mas baja

También podría gustarte