Seja a seguinte tabela de um banco de dados relacional: Material (Cod, Nome, Valor), sendo Cod a sua chave primária.A expressão SQL para obter o número de registros dessa tabela cujo atributo Nome comece com a letra B é:
ASELECT Count (Cod)FROM MaterialWHERE Nome = ‘B%’;
BSELECT Count (Cod)FROM MaterialWHERE Nome LIKE ‘B%’;
CSELECT Sum (Cod)FROM MaterialWHERE Nome INS ‘B#’;
DSELECT Total (Cod)FROM MaterialWHERE Nome LIKE ‘%B’;
ESELECT Reg (Cod)FROM MaterialWHERE Nome Between ‘B%’ AND ‘C’;
Revelar gabarito e comentário▾
GabaritoB — SELECT Count (Cod)
FROM Material
WHERE Nome LIKE ‘B%’;
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: Funções de Agregação e Operador LIKE
Gabarito: letra B. A consulta deve contar o número de registros cujo atributo Nome comece com a letra B, o que exige a função de agregação COUNT combinada com o operador LIKE e o padrão 'B%'. A alternativa B é a única que atende corretamente a esses requisitos.
A questão testa o conhecimento de duas funcionalidades básicas do SQL: (1) a função de agregação COUNT, que retorna o número de linhas que satisfazem a condição; e (2) o operador LIKE, usado para comparação de padrões com os caracteres curinga % (qualquer sequência) e _ (um caractere).
Alternativa A — ❌ Incorreta
Usa o operador = em vez de LIKE. O operador = busca correspondência exata, não permitindo o curinga %. Logo, a condição Nome = 'B%' tentaria encontrar um nome literalmente igual a 'B%', e não nomes começados com B.
Alternativa B — ✅ Correta ⟵ GABARITO
Utiliza COUNT(Cod) para contar registros e WHERE Nome LIKE 'B%' para filtrar aqueles cujo nome começa com a letra B. Essa é a sintaxe padrão do SQL.
Sintaxe SQL padrão:
SELECT COUNT(coluna) FROM tabela WHERE coluna LIKE 'padrão';
O % no final indica qualquer sequência de caracteres após o B.
Alternativa C — ❌ Incorreta
SUM(Cod) calcula a soma dos valores de Cod, não o número de registros. Além disso, INS não é um operador SQL válido; o correto seria LIKE. O padrão 'B#' usa # indevidamente (não é curinga no SQL).
Alternativa D — ❌ Incorreta
Total(Cod) não é uma função de agregação padrão do SQL; o correto é COUNT. A condição LIKE '%B' busca nomes que terminam com B, e não que começam.
Alternativa E — ❌ Incorreta
Reg(Cod) não é uma função SQL válida. A cláusula BETWEEN não aceita curingas; ela compara valores em um intervalo fechado, e a expressão 'B%' AND 'C' é inválida.
PEGA ESSA DICA!
Para memorizar, lembre que COUNT conta linhas, SUM soma valores, AVG calcula média. O padrão 'B%' significa: começa com B, seguido de qualquer coisa. O operador LIKE é sempre usado com curingas; para igualdade exata usa-se =.