Questão FC372862
Para criar uma consulta que pesquise na tabela Trabalhadores de um banco de dados aberto e em condições ideais todos os nomes e telefones de trabalhadores cujos nomes sejam Sofia o
Linguagem SQL
FCC · 2018
Para criar uma consulta que pesquise na tabela Trabalhadores de um banco de dados aberto e em condições ideais todos os nomes e telefones de trabalhadores cujos nomes sejam Sofia ou Sophia, um Analista de Sistemas deve utilizar a instrução PL/SQL SELECT nome, telefone FROM Trabalhadores WHERE
- REGEXP_LIKE (nome, '^So(f|ph)ia$');
- nome ='^So(f|ph)ia$';
- nome CONTAINS('^So(f|ph)ia$');
- nome REGEXP('%So(f|ph)ia%');
- REGEXP(nome, '%So(f|ph)ia%');
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
A função Oracle PL/SQL REGEXP_LIKE verifica se uma coluna corresponde a uma expressão regular. Sua sintaxe é REGEXP_LIKE(source_string, search_pattern[, match_parameter]), onde source_string é a coluna pesquisada e search_pattern é a regex.
O padrão '^So(f|ph)ia$' usa ^ para início da string e $ para fim, garantindo correspondência completa. O grupo (f|ph) indica alternativa entre "f" e "ph", portanto a expressão aceita exatamente "Sofia" ou "Sophia".
Exemplo de uso:
SELECT nome, telefone FROM Trabalhadores WHERE REGEXP_LIKE(nome,'^So(f|ph)ia$');
Se desejar ignorar maiúsculas/minúsculas, acrescente o parâmetro de matching:
REGEXP_LIKE(nome,'^So(f|ph)ia$','i'), que torna a busca case‑insensitive.
Conteúdo do catálogo FC Concursos · Atualizado em