Buscar

Exercício Implementação BDs e Respostas

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

--Liste a média salarial dos funcionários que voaram em dezembro de 2013.
select avg(salario) as media_salarial
from funcionarios f
inner join voos_tripulantes vt on vt.mat_tripulante = f.matricula
inner join voos v on vt.num_voo = v.numero
where v.data >= '2013-12-01' and v.data < '2014-01-01';
--Liste as descrições dos modelos de aviões e as quantidades
--de passageiros transportadas por eles no ano de 2014.
select m.descricao, count(*) as qtde_passageiros
from modelos m
inner join avioes a on a.cod_modelo = m.codigo
inner join voos v on v.cod_aviao = a.codigo
inner join voos_passageiros vp on vp.num_voo = v.numero
where v.data >= '2014-01-01' and v.data < '2015-01-01'
group by m.descricao;
--Liste os nomes dos funcionários que foram tripulantes em mais
--de 3 vôos
select p.nome
from pessoas p
inner join funcionarios f on p.cpf = f.cpf
inner join voos_tripulantes vt on vt.mat_tripulante = f.matricula
group by p.nome
having count(*) > 3;
--Conte quantos passageiros diferentes voaram no ano de 2013.
select count(distinct vp.cpf_passageiro)
from voos_passageiros vp
inner join voos v on v.numero = vp.num_voo
where v.data >= '2013-01-01' and v.data < '2014-01-01';
--Para cada modelo de avião, informe a primeira data de vôo
--dos modelos que transportaram mais de 5 passageiros.
select m.descricao, min(v.data) as primeira_data_voo
from modelos m
inner join avioes a on a.cod_modelo = m.codigo
inner join voos v on v.cod_aviao = a.codigo
inner join voos_passageiros vp on vp.num_voo = v.numero
group by m.descricao
having count(*) > 5;

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais