Flashcard FC370298
Como selecionar, por ano, os meses com o maior índice (mantendo empates) usando subconsulta correlacionada?
Linguagem SQL
FGV · 2024
Como selecionar, por ano, os meses com o maior índice (mantendo empates) usando subconsulta correlacionada?
Mostrar resposta e comentário
Resposta
Resposta: usar subconsulta correlacionada com NOT EXISTS.Explicação:
• A subconsulta correlacionada compara a mesma ano (ex.: x.ano = ipca.ano) e verifica x.indice > ipca.indice.
• NOT EXISTS elimina linhas que tenham outro registro do mesmo ano com índice maior — restam os máximos.
• Usar > (não >=) preserva empates (meses distintos com mesmo valor máximo).
• Ordenar por ano, mes para apresentação.
Exemplo sintético de padrão:
select ano, mes
from ipca
where not exists (
select 1 from ipca x
where x.ano = ipca.ano
and x.indice > ipca.indice
)
order by ano, mesVeja como foi cobrado:
https://flashcardsconcursos.com.br/portal/flashcard/359646
Conteúdo do catálogo FC Concursos · Atualizado em