FC ConcursosFC Concursos

Questão FC369468

Observe o script SQL a seguir. CREATE TABLE Pessoa (Nome varchar(255)); INSERT INTO Pessoa (Nome) VALUES ('Ana Luca'); INSERT INTO Pessoa (Nome) VALUES ('Antonio Silva'); INSERT IN

Linguagem SQL

FGV · 2024

Observe o script SQL a seguir.


CREATE TABLE Pessoa (Nome varchar(255));
INSERT INTO Pessoa (Nome)
VALUES ('Ana Luca');
INSERT INTO Pessoa (Nome)
VALUES ('Antonio Silva');
INSERT INTO Pessoa (Nome)
VALUES ('Tania Rosendo');
INSERT INTO Pessoa (Nome)
VALUES ('Rosa Flor');
INSERT INTO Pessoa (Nome)
VALUES ('Lara Bel');
SELECT * FROM Pessoa
WHERE (Nome LIKE 'A_A%'
OR Nome LIKE 'R%' /*OR Nome LIKE '%BEL'
OR Nome LIKE '%T%'*/ OR Nome LIKE '%F');

 

O resultado JSON da execução do script apresentado é:

  1. [{"Nome":"Ana Luca"},{"Nome":"Rosa Flor"}]
  2. [{"Nome":"Rosa Flor"},{"Nome":"Lara Bel"}]
  3. [{"Nome":"Ana Luca"},{"Nome":"Tania Rosendo"},{"Nome":"Lara Bel"}]
  4. [{"Nome":"Antonio Silva"},{"Nome":"Tania Rosendo"},{"Nome":"Rosa Flor"}]
  5. [{"Nome":"Ana Luca"},{"Nome":"Antonio Silva"},{"Nome":"Tania Rosendo"},{"Nome":"Lara Bel"}]
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

O resultado JSON é [{"Nome":"Ana Luca"},{"Nome":"Rosa Flor"}] porque a consulta usa o operador LIKE com curingas e há um comentário que elimina duas condições.

O curinga % representa zero ou mais caracteres e o _ representa exatamente um caractere. Assim, LIKE 'A_A%' encontra nomes que começam com "A", têm um caractere qualquer e em seguida "A" — corresponde a Ana Luca.

LIKE 'R%' busca nomes que começam com "R", correspondendo a Rosa Flor.

O trecho /* ... */ comenta OR Nome LIKE '%BEL' OR Nome LIKE '%T%', portanto esses filtros são ignorados e não trazem Lara Bel nem Antonio Silva.

Por fim, OR Nome LIKE '%F' (nomes terminando em "F") não encontra registros. Logo, sobram apenas os dois nomes acima, exibidos no formato JSON indicado.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo