Questão nº 37
Questão de Tecnologia da Informação · FGV STN 2024 (nº 37)
FGV2024Auditor Federal de Finanças e Controle - Tecnologia da Informação (Operação e Infraestrutura)Tecnologia da Informação
Gabarito: Aver comentário ↓
No contexto da tabela IPCA apresentada, analise o comando SQL a seguir.
select avg(indice)
from IPCA
group by mes
order by mes
A execução desse comando gera
- Adoze linhas com uma coluna contendo números. (alternativa correta)
- Bdoze linhas, contendo o valor null na primeira coluna e números na segunda.
- Cum resultado vazio.
- Duma linha com duas colunas, contendo o valor null e a média de todos os índices.
- Euma linha com uma coluna, contendo a média de todos os índices.
Resposta comentada
Gabarito Alternativa A
O comando GROUP BY agrupa as linhas de uma tabela com base em valores idênticos em uma ou mais colunas, e as funções de agregação (como AVG, SUM, COUNT) operam sobre cada um desses grupos.
- (A) Correta: O comando
group by mesirá criar um grupo para cada valor distinto na colunames. Como a tabela IPCA possui meses de 1 a 12, serão formados doze grupos (um para cada mês). A funçãoavg(indice)calculará a média doindicepara cada um desses doze grupos. O resultado será doze linhas, cada uma contendo a média do índice de um mês específico, ou seja, uma coluna com números. Oorder by mesapenas garante que a ordem das linhas de saída será crescente pelos meses, mas não altera a quantidade de linhas ou colunas. - (B) Incorreta: O comando
select avg(indice)pede apenas uma coluna no resultado. Não há instrução para exibir duas colunas, nem para que uma delas contenhanull. - (C) Incorreta: A tabela
IPCAapresentada tem dados. O comando SQL é válido e será executado, produzindo resultados baseados nos dados existentes. - (D) Incorreta: O comando
select avg(indice)pede apenas uma coluna no resultado. Além disso, a presença dogroup by mesgarante que a média será calculada por mês, resultando em múltiplas linhas (uma para cada mês), e não apenas uma linha com a média de todos os índices. - (E) Incorreta: Esta seria a resposta correta se a cláusula
group by mesnão estivesse presente. Com ogroup by mes, a média é calculada para cada mês individualmente, e não para o conjunto total de dados como uma única média. A armadilha aqui é ignorar ou subestimar o efeito doGROUP BY, que transforma uma agregação global em uma agregação por grupo.
Fonte: FGV STN 2024 Auditor Federal de Finanças e Controle - Tecnologia da Informação (Operação e Infraestrutura) (Caderno Tipo 1). Reproduzida para fins de estudo.
