Questão 47 — FGV 2021 (BANESTES): Informática

Nas próximas cinco questões, considere as tabelas T1, T2 e T3, cujas estruturas e instâncias são exibidas a seguir. O valor NULL deve ser tratado como unknown (desconhecido).
T1 T2 T3 A B C D A C E 1 3 100 42 1 100 20 2 2 110 55 1 110 40 4 2 120 33 2 120 10 2 100 NULL 2 110 10

Tomando como referência as tabelas T1, T2 e T3, descritas anteriormente, o comando SQL select t1.A, t2.C, sum(t3.E) soma from t1, t2, t3 where t1.B > 2 and t2.D < 55 and t3.E > 19 group by t1.A, t2.C produz um resultado que, sem contar a linha de títulos, exibe:

  1. Aduas linhas;
  2. Btrês linhas;
  3. Cquatro linhas;
  4. Dseis linhas;
  5. Enove linhas.
Gabarito e comentário

Gabarito: A — duas linhas;

A questão exige a análise do resultado de uma consulta SQL que envolve múltiplas tabelas, filtros, agrupamento e uma função de agregação. A resolução correta segue a ordem de execução lógica de uma consulta SQL:

  1. FROM e WHERE (Filtragem): Primeiro, aplicamos os filtros a cada tabela para reduzir o universo de dados.

    • De T1, a condição t1.B &gt; 2 seleciona apenas a linha (1, 3).
    • De T2, a condição t2.D &lt; 55 seleciona as linhas (100, 42) e (120, 33).
    • De T3, a condição t3.E &gt; 19 seleciona as linhas (1, 100, 20) e (1, 110, 40).
  2. Produto Cartesiano: O FROM t1, t2, t3 combina todas as linhas filtradas, resultando em um conjunto intermediário com 1 (de T1) * 2 (de T2) * 2 (de T3) = 4 linhas.

  3. GROUP BY (Agrupamento): Essas 4 linhas são então agrupadas com base nos valores das colunas t1.A e t2.C. As combinações de (t1.A, t2.C) no conjunto intermediário são (1, 100) e (1, 120). Isso forma dois grupos distintos.

  4. SELECT (Resultado): Como a cláusula GROUP BY gerou dois grupos, a consulta final terá duas linhas, uma para cada grupo, com o valor de sum(t3.E) calculado para cada um.

(B) Incorreta. O agrupamento por (t1.A, t2.C) gera apenas dois grupos, não três. (C) Incorreta. Quatro seria o número de linhas antes da aplicação do GROUP BY. (D) Incorreta. Não há operação na consulta que resulte em seis linhas. (E) Incorreta. Não há operação na consulta que resulte em nove linhas.

Dica: Em questões SQL com GROUP BY, resolva a consulta em etapas: 1º filtre com WHERE, 2º faça a junção (FROM), 3º identifique os grupos distintos (GROUP BY). O número de grupos distintos será o número de linhas do resultado final.

Fundamentos: Linguagem SQL: Cláusulas WHERE, FROM, GROUP BY, SELECT · Linguagem SQL: Funções de Agregação (SUM) · Linguagem SQL: Produto Cartesiano (Junção Implícita)

Comentário Cravei IA, gerado a partir do gabarito oficial e verificado automaticamente. A IA pode errar: o gabarito da banca prevalece.

Origem

Questão 47 da prova FGV 2021 — Banco do Estado do Espírito Santo, cargo Desenvolvimento de Sistemas. Não é do CNU: entra no app como complementar porque o assunto cai no eixo indicado abaixo.

Onde esta questão aparece no Cravei CNU

Mais questões de Informática →

Simulado CNU Bloco 3: todas as questões comentadas do bloco →

Guia do Bloco 3 – Ciência, Dados e Tecnologia: cargos, pesos e conteúdo →

Questões relacionadas