Questão nº 58
Questão de Tecnologia da Informação · FGV MP-SC 2022 (nº 58)
Considere uma tabela relacional T com três colunas, A, B e C. Para as colunas A e B, separadamente, foram criados índices do tipo bitmap, cujos conteúdos são exibidos a seguir, na ordem.

Nesse contexto, o valor exibido pela execução do comando SQL
select sum(1) contagem
from T where A=1010 or B=316
deve ser:
- Ao número 0;
- Bo número 1;
- Co número 2;
- Do número 3; (alternativa correta)
- ENULL.
Resposta comentada
Gabarito Alternativa D
Conceito-chave: Índice bitmap é uma estrutura que guarda, para cada valor distinto de uma coluna, uma sequência de bits (0 ou 1) indicando quais linhas da tabela têm aquele valor. Para responder à consulta com OR, você faz um OR bit a bit dos bitmaps das condições e conta quantos bits 1 resultam — isso dá o número de linhas que satisfazem pelo menos uma das condições.
- (A) Incorreta: O número 0 seria o resultado se nenhuma linha tivesse A=1010 ou B=316, mas os bitmaps mostram que há linhas com esses valores.
- (B) Incorreta: O número 1 seria o resultado se apenas uma linha única satisfizesse a condição, mas a contagem é maior.
- (C) Incorreta: O número 2 seria o resultado se exatamente duas linhas distintas atendessem à condição, mas a contagem correta é 3.
- (D) Correta: O gabarito oficial é 3. O bitmap de A=1010 tem bits
1nas linhas 1 e 3; o bitmap de B=316 tem bits1nas linhas 2 e 3. Fazendo o OR bit a bit:1 OR 0 = 1,0 OR 1 = 1,1 OR 1 = 1→ três bits1, logosum(1)retorna 3. Armadilha da banca: o distrator mais tentador é a letra C (número 2), pois o aluno pode somar os1s de cada bitmap separadamente (2 + 2 = 4) e depois subtrair a interseção (linha 3, que aparece nos dois) achando 3, mas se esquecer de que a linha 3 é contada uma única vez noOR— ou pode contar apenas as linhas onde A=1010 (2 linhas) e ignorar que B=316 adiciona mais uma linha (a linha 2), caindo em 2. - (E) Incorreta:
sum(1)nunca retorna NULL, pois conta linhas (mesmo sem nenhuma linha, retornaria 0, não NULL).
Fonte: FGV MP-SC 2022 Analista em Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.