Está en la página 1de 3

PONTIFICIA UNIVERSIDAD CATLICA DEL ECUADOR

FACULTAD DE INGENIERIA
ESCUELA DE SISTEMAS

Nombre: Patricio Prez Fecha:11-11-2016


Curso: Sexto Nivel Tema: Algebra relacional y SQL optimizado

Consulta 1:

SELECT Nombre, Apellido1, Direccin

FROM EMPLEADO, DEPARTAMENTO

WHERE NombreDpto=Investigacin AND NumeroDpto=Dno;

,1, (||= (= ()))

Optimizado:

SELECT Nombre, Apellido1, Direccin

FROM EMPLEADO

WHERE Dno= ( SELECT NumeroDpto FROM DEPARTAMENTO WHERE


NombreDpto=Investigacion);

Consulta 4:

(SELECT DISCTINCT NumProyecto

FROM PROYECTO, DEPARTAMENTO, EMPLEADO

WHERE NumDptoProyecto=NumeroDpto AND DniDirector=Dni

AND Apellido1=Perez)

UNION

(SELECT DISCTINCT NumProyecto

FROM PROYECTO, TRABAJA_EN, EMPLEADO

WHERE NumProyecto=NumProy AND DniEmpleado=Dni

AND Apellido1=Perez);

(|| = (||= (1= ())))

(|| = (|| = (1= ())))


Optimizado:

[SELECT DISTINCT NumProyecto

FROM PROYECTO

WHERE NumDptoProyecto=(SELECT NumeroDpto FROM DEPARTAMENTO WHERE DniDirector=(


SELECT Dni FROM EMPLEADO WHERE Apellido1=Perez))]

UNION

[SELECT DISTINCT NumProyecto

FROM PROYECTO

WHERE NumDptoProyecto=(SELECT NumProy FROM TRABAJA_EN WHERE DniEmpleado=(


SELECT Dni FROM EMPLEADO WHERE Apellido1=Perez))]

Consulta 8:

SELECT E.Nombre, E.Apellido1, S.Nombre, S.Apellido1

FROM EMPLEADO AS E, EMPLEADO AS S

WHERE E.SuperDni=S.Dni;

.,.1,.,.1 (() ()||(.=.) () ())

Optimizado:

Ya esta optimizado.

Consulta 1B:

SELECT E.Nombre, E.NombreC, E.Direccion

FROM EMPLEADO E, DEPARTAMENTO D

WHERE D.Nombre=Investigacion AND D.NumeroDpto=E.NumeroDpto;

.,.,. (() ()||(.=.) (.= (() ())))

Optimizado:

SELECT E.Nombre, E.NombreC, E.Direccion

FROM EMPLEADO E

WHERE E.NumeroDpto=(SELECT D.NumeroDpto FROM DEPARTAMENTO D WHERE


D.Nombre=Investigacion)
Consulta 27:

SELECT NumProyecto, NombreProyecto, COUNT (*)

FROM PROYECTO, TRABAJA_EN, EMPLEADO

WHERE NumProyecto=NumProy AND Dni=DniEmpleado AND Dno=5

GROUP BY NumProyecto, NombreProyecto;

, () (, (||= (_||= (=5 ()))))

Optimizado:

SELECT NumProyecto, NombreProyecto, count(*)

FROM PROYECTO

WHERE NumProyecto=(SELECT NumProy FROM TRABAJA_EN WHERE DniEmpleado=(Select Dni


FROM EMPLEADO WHERE Dno=5);

También podría gustarte