Baixe o app para aproveitar ainda mais
Prévia do material em texto
1) O resultado final (posição de chegada, nome do piloto e tempo de prova) do GP de “Interlagos” R: select r.posicao_chegada, p.nome, r.tempo_corrida from resultados r join pilotos p on r.numero_piloto = p.numero where sigla_gp = 'BRA' order by posicao_chegada; 2) Qual o tempo da volta mais rápida do GP de “Mônaco” R: select min(tempo) from voltas where sigla_gp = 'MON'; 3) Os nomes dos países e suas respectivas quantidades de pilotos, ordenados de forma decrescente pelas quantidades de pilotos R: select p.nome,count(*) qtda from paises p join pilotos pi on p.codigo = pi.cod_pais group by p.nome order by qtda desc; 4) A classificação do Mundial de Construtores (nome da equipe e pontuação na temporada) R: select e.nome, sum(pontuacao) pts from resultados r join pilotos pi on pi.numero = r.numero_piloto join equipes e on e.sigla = pi.sigla_equipe group by e.nome order by pts desc; 5) Os nomes dos GPs que tiveram ao menos uma volta abaixo de 1 min e 30 seg. R: select c.nome_gp from corridas c join participantes p on p.sigla_gp = c.sigla_gp join voltas v on v.numero_piloto = p.numero_piloto where tempo < '1:30:00' group by c.nome_gp; 6) O nome do piloto conseguiu o melhor tempo de volta em toda a temporada R: select pi.nome from voltas as v join participantes p on v.numero_piloto = p.numero_piloto join resultados r on r.sigla_gp = p.sigla_gp join pilotos as pi on pi.numero = p.numero_piloto where tempo = (select min(tempo) from voltas) group by pi.nome; 8) Nomes das equipes que possuem ao menos um piloto entre as três posições de alguma corrida R: select eq.nome from resultados r join participantes p on p.numero_piloto = r.numero_piloto join pilotos pi on pi.numero = p.numero_piloto join equipes eq on eq.sigla = pi.sigla_equipe where r.posicao_chegada = 1 or r.posicao_chegada = 2 or posicao_chegada = 3 group by eq.nome; 9) Nomes das equipes em que todos os pilotos pontuaram na temporada R: select eq.nome from resultados r join participantes p on p.numero_piloto = r.numero_piloto join pilotos pi on pi.numero = p.numero_piloto join equipes eq on eq.sigla = pi.sigla_equipe where r.pontuacao <> 0 group by eq.nome; 10) Nomes dos países e suas quantidades de pilotos, mas só daqueles que possuem corridas realizadas no país R: select p.nome, count(*) qtda from paises p join pilotos pi on p.codigo = pi.cod_pais join corridas c on c.cod_pais = p.codigo where pi.cod_pais = c.cod_pais group by p.nome; 11) Nomes dos pilotos que venceram corridas realizadas em seu próprio país R: select pi.nome, from resultados r join participantes p on p.numero_piloto = r.numero_piloto join pilotos pi on pi.numero = p.numero_piloto join paises pa on pa.codigo = pi.cod_pais join corridas co on co.cod_pais = pa.codigo where r.posicao_chegada = '1'and r.sigla_gp = co.sigla_gp and co.cod_pais = pi.cod_pais group by pi.nome; 13) Nomes das equipes e suas quantidades de vitórias R: select e.nome,count(posicao_chegada) qtd from resultados r join pilotos pi on pi.numero = r.numero_piloto join equipes e on e.sigla = pi.sigla_equipe where r.posicao_chegada = '1' group by e.nome order by qtd desc;
Compartilhar