Exercícios SQL Avançado
select EMP.* from EMPREGADO EMP inner join PROJETO_EMPREGADO PEMP on PEMP.CodEmp = EMP.CodEmp
2. Faça o comando SQL que mostre o nome do departamento, a média de salários do departamento e a média de salários de toda a empresa.
select DEP.Descricao,
AVG(EMP.Salario) as MediaDepto,
(select AVG(EMP.Salario) from EMPREGADO EMP ) as MediaTotal, from DEPARTAMENTO DEP inner join EMPREGADO EMP on EMP.CodDepto = DEP.CodDepto
3. Faça o comando SQL que mostre o código e o nome do projeto, a quantidade de empregados no projeto, o total de horas do projeto.
select PRO.CodProj, PRO.Nome
(select count(CodEmp) from PROJETO_EMPREGADO PEM where PEM.CodProj = PRO.CodProj),
(select sum(horas) from PROJETO_EMPREGADO PEM where PEM.CodProj = PRO.CodProj) from PROJETO PRO
4. Faça o comando SQL que mostre o código e o nome do projeto, a soma dos empregados que trabalham no projeto e o nome do gerente do projeto.
select PRO.CodProj, PRO.Nome
(select sum(CodEmp) from PROJETO_EMPREGADO PEM where PEM.CodProj = PRO.CodProj) as SomaFunc,
(select Nome from EMPREGADO emp inner join PROJETO_EMPREGADO pemp on pemp.codemp = emp.codemp where Gerente = 'Sim' ) Nome Gerente from PROJETO PRO
5. Faça o comando SQL que mostre os 3 projetos com horas gastas maior que a média.
select p.nome,pe.horas from projeto p inner join projeto_empregado pem on p.codproj = pem.codproj where pe.horas > (select avg(horas) from projeto_empregado) group by p.nome,pe.horas
6. Faça o comando SQL que mostre o nome dos empregados que têm o maior salário.
select Nome from EMPREGADO where salario = (select MAX(Salario) from EMPREGADO)
7. Faça o comando SQL que mostre o nome dos empregados que não têm dependentes.
select Nome from EMPREGADO where codemp not in (select codemp from