Pular para o conteúdo principal

Questão de Banco de Dados — PL-SQL — FCC 2021

Banco de DadosPL-SQL
Código
fc060822
Banca
FCC
Órgão
TJ-SC
Ano
2021
Cargo
Analista de Sistemas
Para exibir o cpf (varchar) de todos os procuradores, na tabela de mesmo nome, que tenham o valor '5' como segundo caractere do cpf utiliza-se a instrução PL/SQL:SELECT cpf FROM Procuradores WHERE
  1. Acpf LIKE '_5%';
  2. BSUBSRT(cpf,2,'5');
  3. C(cpf,2,'5');
  4. DSUBSTRING(cpf,1) LIKE '5';
  5. Ecpf HAVE '_5*';
Revelar gabarito e comentário

GabaritoA — cpf LIKE '_5%';

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 caracteres curinga

Gabarito: letra A. Para selecionar registros onde o segundo caractere do campo cpf é igual a '5', utiliza-se o operador LIKE com o padrão '_5%'. O underscore (_) representa exatamente um caractere qualquer e o percentual (%) representa zero ou mais caracteres. Essa é a sintaxe padrão do SQL.

A banca testa o conhecimento dos caracteres curinga do LIKE e da sintaxe correta para expressões condicionais em consultas.

  1. 1_ (underscore)
  2. 2Exatamente 1 caractere
  3. 3% (percentual)
  4. 4Zero ou mais caracteres
  5. 5Padrão '_5%'
  6. 62º caractere = '5'
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

A expressão cpf LIKE '_5%' está correta: o underscore corresponde ao primeiro caractere (qualquer), o '5' é o segundo caractere literal, e o percentual corresponde ao restante da string. Assim, serão retornados os CPFs cujo segundo dígito seja 5.

Alternativa B — ❌ Incorreta

A função SUBSRT não existe em SQL; o correto seria SUBSTR. Mesmo que fosse SUBSTR(cpf,2,1), ela extrairia o segundo caractere, mas não faria uma comparação com '5' – faltaria o operador = '5'. Além disso, a sintaxe SUBSRT(cpf,2,'5') é inválida.

Alternativa C — ❌ Incorreta

(cpf,2,'5') não é uma expressão SQL válida. Não há operador ou função nesse formato.

Alternativa D — ❌ Incorreta

SUBSTRING(cpf,1) extrai a string a partir do primeiro caractere (posição 1), e então LIKE '5' verifica se o primeiro caractere é '5'. Isso testa o primeiro dígito, não o segundo. Além disso, a sintaxe SUBSTRING(cpf,1) é incompleta (faltaria o comprimento) e o uso do LIKE após SUBSTRING é desnecessário.

Alternativa E — ❌ Incorreta

cpf HAVE '_5*' utiliza uma cláusula HAVE inexistente no SQL. O correto é WHERE. Além disso, o padrão '_5*' usa asterisco, que não é curinga do SQL; o curinga para múltiplos caracteres é %, não *.

Gabarito: letra A.

Link permanente: /questoes/fc060822