Questão nº 26

Questão de Suporte em Tecnologia da Informação · FGV TJDFT 2022 (nº 26)

FGV2022Analista Judiciário - Suporte em Tecnologia da InformaçãoSuporte em Tecnologia da Informação
Gabarito: Ever comentário ↓

Considere uma tabela relacional com uma coluna, intitulada Cidade, que contém as strings “São Paulo”, “Rio de Janeiro”, “Manaus”, “Sao Paulo”, “Manaus”, dispostas uma em cada linha.
A execução dos comandos SQL

```
SELECT Cidade FROM Locations
where Cidade COLLATE Latin1_General_CI_AI
in ('São Paulo','Rio de Janeiro', 'MANAUS')

SELECT Cidade FROM Locations
where Cidade COLLATE Latin1_General_CI_AS
in ('São Paulo','Rio de Janeiro', 'MANAUS')

SELECT Cidade FROM Locations
where Cidade COLLATE Latin1_General_CS_AI
in ('São Paulo','Rio de Janeiro', 'MANAUS')
```

no MS SQL Server produz resultados que, além da linha de títulos, contêm, respectivamente:

Resposta comentada

Gabarito Alternativa E

Conceito-chave: Collation define as regras de comparação de texto no SQL Server. As siglas significam: CI = Case Insensitive (não diferencia maiúsculas de minúsculas), CS = Case Sensitive (diferencia), AI = Accent Insensitive (não diferencia acentos, então "São" = "Sao"), AS = Accent Sensitive (diferencia acentos, então "São" ≠ "Sao").

(A) Incorreta: 3, 4 e 5 linhas não corresponde a nenhum dos três resultados, pois o primeiro comando (CI_AI) retorna 5 linhas (todas, incluindo "Sao Paulo" e as duas "Manaus"), não 3.

(B) Incorreta: 4, 3 e 5 linhas inverte a ordem dos resultados, mas o segundo comando (CI_AS) retorna 4 linhas (exclui "Sao Paulo", pois o acento é obrigatório), não 3.

(C) Incorreta: 4, 5 e 3 linhas falha no primeiro comando, que deveria retornar 5 linhas (CI_AI ignora acento e caixa), não 4.

(D) Incorreta: 5, 3 e 4 linhas erra no segundo comando, que retorna 4 linhas (CI_AS mantém "São Paulo" e "Rio de Janeiro", mas exclui "Sao Paulo"), não 3.

(E) Correta: O primeiro comando (`CI_AI`) ignora acento e caixa, então retorna todas as 5 linhas (inclui "Sao Paulo" e as duas "Manaus"). O segundo (`CI_AS`) ignora caixa, mas exige acento correto, então retorna 4 linhas (exclui "Sao Paulo"). O terceiro (`CS_AI`) diferencia caixa, mas ignora acento, então retorna 3 linhas (exclui "sao paulo" minúsculo e as duas "MANAUS" maiúsculas, pois a lista tem 'MANAUS' em maiúsculas, mas a coluna tem 'Manaus' com M maiúsculo e resto minúsculo).

Armadilha do distrator mais tentador (B): A banca tenta confundir quem acha que `CI_AS` retorna 3 linhas, esquecendo que "Rio de Janeiro" e "São Paulo" estão na lista com acento correto, e "Manaus" (sem acento) também casa com 'MANAUS' (CI ignora caixa). O erro é pensar que `AS` excluiria "Manaus", mas "Manaus" não tem acento, então não é afetado.

Fonte: FGV TJDFT 2022 Analista Judiciário - Suporte em Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho