Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FCC 2018

Banco de DadosSQL
Código
fc047340
Banca
FCC
Órgão
Prefeitura de São Luís - MA
Ano
2018
Cargo
Auditor Fiscal de Tributos I - Tecnologia da Informação (TI)
Um Auditor está executando operações em uma tabela chamada cidadao de um banco de dados aberto e em condições ideais. Para exibir os dados de todas as pessoas que possuem na segunda letra do campo nome a vogal a, deve-se utilizar a instrução SQL:SELECT * FROM cidadao WHERE
  1. Anome = '*a';
  2. Bnome LIKE '_a%';
  3. Cnome CONTAINS('a',2);
  4. Dnome LIKE '*a';
  5. Enome HAVE(2,'a');
Revelar gabarito e comentário

GabaritoB — nome LIKE '_a%';

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

SQL: Filtro com operador LIKE

Gabarito: letra B. Para filtrar registros onde a segunda letra do campo nome é a vogal 'a', usa-se a cláusula WHERE nome LIKE '_a%'. O curinga _ (underline) representa exatamente um caractere qualquer, e % representa zero ou mais caracteres. Essa é a sintaxe padrão SQL (padrão ANSI/ISO).

A questão testa o conhecimento dos curingas do operador LIKE. Muitos candidatos confundem os curingas do SQL com os de outros sistemas (como * em alguns SGBDs ou expressões regulares). O comando LIKE aceita apenas % e _ como curingas no padrão SQL.

Alternativa A — ❌ Incorreta

nome = '*a' – O operador = exige igualdade exata, não aceita padrões. O asterisco não é curinga SQL.

Alternativa B — ✅ Correta ⟵ GABARITO

nome LIKE '_a%' – Corresponde a: primeiro caractere qualquer (_), segundo caractere 'a' (a), e qualquer sequência após (%). Exatamente o que foi pedido.

Alternativa C — ❌ Incorreta

nome CONTAINS('a',2)CONTAINS é usado em buscas textuais (full-text), não para esse padrão posicional. A sintaxe não faz parte do SQL padrão para esse fim.

Alternativa D — ❌ Incorreta

nome LIKE '*a' – O asterisco não é curinga no SQL padrão. Alguns SGBDs podem ter extensões, mas para a questão (condições ideais, padrão) está errado.

Alternativa E — ❌ Incorreta

nome HAVE(2,'a') – Não existe função ou cláusula HAVE em SQL.

NÃO CAIA NESSA!

A banca troca o curinga correto (_) por * (alternativas A e D) e inventa funções inexistentes (C, E). Lembre-se: no LIKE do SQL, % significa qualquer sequência e _ significa exatamente um caractere.

Gabarito: letra B.

Link permanente: /questoes/fc047340