Pular para o conteúdo principal

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

Banco de DadosSQL
Código
fc040045
Banca
FCC
Órgão
TRT - 24ª REGIÃO (MS)
Ano
2017
Nível
Médio
Cargo
Técnico Judiciário - Tecnologia da Informação
Para obter o número de funcionários cujo conteúdo do campo nome da tabela funcionario termina com a letra o deve-se utilizar a instrução SQL SELECT COUNT(*) FROM funcionario WHERE
  1. Anome LIKE '*o';
  2. Bnome LIKE '%o';
  3. CSUBSTR(nome,LEN(nome)-1)='o';
  4. Dnome CONTAINS '%o';
  5. ESUBSTR(nome,0)='o';
Revelar gabarito e comentário

GabaritoB — nome LIKE '%o';

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: Operador LIKE

Gabarito: letra B. No SQL, para buscar padrões em strings utiliza-se o operador LIKE com o curinga % (zero ou mais caracteres). Para filtrar nomes que terminam com a letra 'o', a condição correta é nome LIKE '%o'.

A banca testa o conhecimento dos curingas do LIKE e a sintaxe correta. Vamos analisar cada alternativa.

Alternativa A — ❌ Incorreta

Utiliza '*o', mas no SQL padrão o curinga que representa qualquer sequência de caracteres é o %, não o *. O * não é reconhecido pelo operador LIKE (embora seja usado em alguns SGBDs como o Access, a questão segue o padrão ANSI/ISO).

Alternativa B — ✅ Correta ⟵ GABARITO

'%o' é a expressão correta: o % indica qualquer sequência de caracteres (inclusive vazia), e a letra 'o' ao final garante que o nome termine com 'o'.

Alternativa C — ❌ Incorreta

SUBSTR(nome, LEN(nome)-1)='o' está incorreta: SUBSTR (ou SUBSTRING) com dois argumentos pega a partir da posição até o final. Se LEN(nome)-1 for a posição, ela retorna os dois últimos caracteres, não apenas o último. Além disso, a sintaxe exata varia entre SGBDs. A forma correta seria SUBSTR(nome, LEN(nome), 1) = 'o' ou usar RIGHT(nome,1)='o'.

Alternativa D — ❌ Incorreta

CONTAINS é usado em buscas textuais (full-text search), não é o operador adequado para essa filtragem simples com padrão curinga.

Alternativa E — ❌ Incorreta

SUBSTR(nome,0)='o': em SQL as posições de string geralmente começam em 1, não em 0. Usar posição 0 é inválido, resultando em erro ou resultado inesperado.

PEGA ESSA DICA!

Decore os curingas do LIKE: % para qualquer sequência, _ para um único caractere. Nunca confunda com * (usado em outros contextos). Em provas, LIKE é sempre com %.

Gabarito: letra B.

Link permanente: /questoes/fc040045