Pauta tarea3

Anuncio
Universidad de los Andes
Facultad de Ingeniería
Profesor : José Manuel González M.
Fecha :
Tarea N° 3
Estructura y Base de Datos
Para la base de datos cuyo esquema se da a continuación:
EMPLOYEE(FNAME,MINIT,LNAME,SSN,BDATE,ADDRESS,SEX,SALARY,SUPERSSN,DNO)
DEPARTMENT(DNAME,DNUMBER,MGRSSN, MGRSTARTDATE)
DEPT_LOCATIONS(DNUMBER, DLOCATION)
PROJECT(PNAME, PNUMBER, PLOCATION, DNUM)
WORKS_ON(ESSN, PNO, HOURS)
DEPENDENT(ESSN, DEPENDENT_NAME, SEX, BDATE, RELATIONSHIP)
Usando SQL, escriba las expresiones que permiten responder a las siguientes
consultas:
a) Nombres de los empleados en el Depto 5 que trabajan mas de 10 horas a la
semana en el proyecto Alfa
Select Fname, Lname
From Employee is e, Works_on is w, Project is p
Where e.dno=p.dnumber and w.pno=p.pnumber and e.dnumber=’5’ and
p.pname= ’alfa’ and w.hours > 10
b) Nombres de los empleados supervisados directamente por ‘Franklin Wong’
select fname, lname
from employee
where superssn in (select ssn
from employee
where fname = ‘franklin’ and lname=’wong’)
c) Nombres de los empleados que no trabajan en proyecto alguno
select fname, lname
from employee
where not exist ( select *
from work_on
where essn = ssn)
d) Para cada Depto, nombre y salario promedio considerando todos sus
empleados
Select Dname, Avg(Salary)
From Empl oyee, Department
Where Dno = Dnumber
Group By Dno
También puede ser: Group By Dname
e) Nombres y direcciones de todos los empleados que trabajan en al menos un
proyecto en Houston pero que pertenecen a un Depto. que no es de Houston
Select Fname, Lname, Address
From Employee
Where Not Exist ( Select *
From Dep_locations
Where Dlocation = ‘Houston’ and dno = dnumber)
And exist ( Select *
From Proyect
Where Plocation = ‘Houston’ and dno = dnum)
Había que tener cuidado en relacionar el “exist” y el “not exist” con Employee
de afuera.
f) Nombre de todos los managers que no tienen dependientes
Select Fname, Lname
From Employee
Where Not Exist ( Select *
From dependent
Where ssn = essn)
Descargar