Pular para o conteúdo principal

Questão de Banco de Dados — SQL — CESPE / CEBRASPE 2021

Banco de DadosSQL
Código
ce130411
Banca
CESPE / CEBRASPE
Órgão
TCE-RJ
Ano
2021
Nível
Superior
Cargo
Analista de Controle Externo - Especialidade: Tecnologia da Informação
Julgue o item a seguir, acerca dos conceitos de administração de banco de dados.Para selecionar todos os registros da tabela PESSOAS, em que o valor da coluna NOME começa com a letra a, é correto utilizar o comando SQL a seguir.SELECT NOME.* FROM PESSOAS WHERE NOME = '%a%'
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

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 e padrões de busca

Gabarito: ❌ ERRADO. O comando apresentado possui múltiplos erros: a) a sintaxe NOME.* é inválida (deveria ser apenas *); b) a cláusula WHERE usa = em vez do operador LIKE, que é necessário para comparação com padrões curinga; c) o padrão '%a%' busca qualquer nome que contenha 'a' em qualquer posição, e não apenas os que começam com 'a'. Para selecionar nomes que iniciam com 'a', o correto seria: SELECT * FROM PESSOAS WHERE NOME LIKE 'a%'.

A banca testa o conhecimento sobre o operador LIKE e os curingas % e _.

Lei (padrão SQL ANSI):

O operador LIKE é usado para buscar um padrão em uma coluna. O curinga % representa zero ou mais caracteres, e _ representa exatamente um caractere.

Análise detalhada:

  • NOME.*: A sintaxe correta para selecionar todas as colunas é *. NOME.* seria interpretado como a coluna NOME seguida de um alias ou referência inválida – gera erro.

  • WHERE NOME = '%a%': O operador = faz comparação exata, não aceita curingas. Para padrões, usa-se LIKE.

  • Padrão '%a%': Mesmo que fosse LIKE, esse padrão encontra qualquer string que contenha 'a' em qualquer posição (começo, meio ou fim). Para nomes que começam com 'a', o correto é 'a%'.

Portanto, o comando está errado.

Gabarito: ❌ ERRADO.

Link permanente: /questoes/ce130411