You are on page 1of 2

1.

Encuentre todas las pizzeras frecuentadas por al menos una persona


menor de 18 aos.
SELECT frecuenta.Nom_Pizzeria FROM personas INNER JOIN frecuenta on
personas.Nit= frecuenta.Nit WHERE personas.Edad<18
2. Encuentre los nombres de todas las mujeres que comen pizza ya sea con
championes o salchichn (o ambas).
[{nombre}({genero=mujer}({pizza=chanpiones}(persona come ))) ]
[{nombre}({genero=mujer}({pizza=chanpiones}(persona come )))]

SELECT DISTINCT personas.Nombre FROM personas INNER JOIN come on


personas.Nit= come.Nit WHERE personas.Genero = "femenino" AND
come.Nom_Pizza="championes" or come.Nom_Pizza="salchichn"
3. Encuentre los nombres de todas las mujeres que comen pizzas con los
dos ingredientes, championes y salchichn.
[{nombre}({genero=mujer}({pizza=chanpiones}(persona come ))) ]
[{nombre}({genero=mujer}({pizza=chanpiones}(persona come )))]

SELECT personas.Nombre FROM personas INNER JOIN (SELECT DISTINCT


t1.Nit FROM come as t1 INNER JOIN come as t2 WHERE t1.Nit = t2.Nit and
t1.Nom_Pizza <> t2.Nom_Pizza) as aux ON personas.Nit = aux.nit
4. Encuentre todas las pizzeras que sirven al menos una pizza que Amy
Gmez come por menos de 10 dlares.
{pizzeria}({precio<10}({nombre='ana'}((persona come) sirve)))

SELECT sirve.Nom_Pizzeria FROM (SELECT come.Nom_Pizza FROM personas


INNER JOIN come on personas.Nit=come.Nit WHERE personas.Nombre="Amy
Gomez") AS aux INNER JOIN sirve ON aux.Nom_Pizza=sirve.Nom_Pizza
WHERE sirve.Precio < 10
5. Encuentre todas las pizzeras que son frecuentadas por solo mujeres o
solo hombres.
Select F.Nom_Pizzeria from (SELECT DISTINCT Nom_Pizzeria FROM personas
INNER JOIN frecuenta ON personas.Nit=frecuenta.Nit WHERE
personas.Genero="femenino") AS F left join (SELECT DISTINCT Nom_Pizzeria
FROM personas INNER JOIN frecuenta ON personas.Nit=frecuenta.Nit WHERE
personas.Genero="masculino") AS M on F.Nom_Pizzeria=M.Nom_Pizzeria where

M.Nom_Pizzeria is null UNION Select M.Nom_Pizzeria from (SELECT DISTINCT


Nom_Pizzeria FROM personas INNER JOIN frecuenta ON
personas.Nit=frecuenta.Nit WHERE personas.Genero="masculino") AS M left join
(SELECT DISTINCT Nom_Pizzeria FROM personas INNER JOIN frecuenta ON
personas.Nit=frecuenta.Nit WHERE personas.Genero="femenino") AS F on
M.Nom_Pizzeria=F.Nom_Pizzeria where F.Nom_Pizzeria is null

6. Encuentre la persona que ha comido todas las pizzas.


SELECT nombre FROM (SELECT Nit FROM A INNER JOIN come ON
A.Nom_Pizza = come.Nom_Pizza GROUP BY Nit HAVING COUNT(*) = (SELECT
COUNT(A.Nom_Pizza) FROM A)) AS aux INNER JOIN personas ON
aux.nit=personas.nit
7.
8.
9. Seleccionar a las personas que comen pizzas con extra queso.
SELECT DISTINCT personas.Nombre FROM personas INNER JOIN come on
personas.Nit= come.Nit WHERE come.Nom_Pizza="extra queso"
10. Seleccionar a las personas que comen pizzas con extra queso y
frecuentan la pizzera X.
SELECT personas.Nombre FROM personas INNER JOIN (SELECT DISTINCT
frecuenta.Nit FROM frecuenta INNER JOIN come on frecuenta.Nit= come.Nit
WHERE frecuenta.Nom_Pizzeria = "Pepper" AND come.Nom_Pizza="extra
queso") as aux ON personas.Nit = aux.nit

You might also like