Questão de Banco de Dados — Consultas e Comandos em SQL — VUNESP 2023
Banco de Dados›Consultas e Comandos em SQL
Código
vu195444
Banca
VUNESP
Órgão
UNICAMP
Ano
2023
Cargo
PTIC ( )
Considere a seguinte tabela de um banco de dados relacional. Sala (Número, Capacidade, Nome) O comando SQL para obter o número, a capacidade e o nome das salas, considerando aquelas com capacidade maior do que 4 é:
ASELECT Sala. ∗ WHERE Capacidade > 4;
BSELECT Sala (Número, Capacidade, Nome) WHERE Capacidade > 4;
CSELECT Sala (∗) WHERE Capacidade > 4;
DSELECT Número ... Nome FROM Sala WHERE Capacidade > 4;
ESELECT ∗ FROM Sala WHERE Capacidade > 4;
Revelar gabarito e comentário▾
GabaritoE — SELECT ∗
FROM Sala
WHERE Capacidade > 4;
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”.
Comandos SQL: a estrutura básica do SELECT
Gabarito: letra E. A consulta correta para obter o número, a capacidade e o nome das salas com capacidade maior que 4 é SELECT * FROM Sala WHERE Capacidade > 4; — o SELECT * seleciona todas as colunas da tabela, o FROM indica a tabela de origem e o WHERE filtra as linhas conforme a condição. As demais alternativas apresentam erros de sintaxe ou omitem cláusulas essenciais.
O comando SELECT é a base da linguagem de consulta de dados (DQL) e segue uma estrutura fixa: SELECT (colunas desejadas) → FROM (tabela de origem) → WHERE (condição de filtro). O * (asterisco) é um curinga que representa todas as colunas da tabela, dispensando a necessidade de listá-las uma a uma. A cláusula WHERE é opcional, mas quando presente, define o predicado que as linhas devem satisfazer para serem retornadas.
Na prática, ao executar SELECT * FROM Sala WHERE Capacidade > 4;, o banco de dados percorre a tabela Sala, avalia cada linha e retorna apenas aquelas cujo valor da coluna Capacidade seja estritamente maior que 4. Como o * foi usado, todas as colunas (Número, Capacidade, Nome) aparecem no resultado — exatamente o que o enunciado pede.
A pegadinha desta questão está na sintaxe: várias alternativas tentam imitar a estrutura do SELECT, mas erram ao colocar o nome da tabela ou o asterisco entre parênteses, ou ao omitir a cláusula FROM. O padrão correto é sempre SELECT <colunas> FROM <tabela> [WHERE <condição>] — sem parênteses ao redor do * ou do nome da tabela.
Guarde a estrutura canônica do SELECT — é nela que as alternativas se dividem: as incorretas violam a ordem ou a sintaxe das cláusulas, enquanto a correta segue exatamente o padrão SELECT * FROM tabela WHERE condição.
1SELECT (colunas)
2FROM (tabela)
3WHERE (filtro)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
SELECT Sala.∗ WHERE Capacidade > 4; — falta a cláusula FROM. A sintaxe correta exige indicar a tabela de origem após o FROM, não antes do WHERE. Além disso, Sala.∗ não é uma forma válida de referenciar todas as colunas; o correto é apenas *.
Alternativa B — ❌ Incorreta
SELECT Sala (Número, Capacidade, Nome) WHERE Capacidade > 4; — a lista de colunas não deve vir entre parênteses após o nome da tabela. A forma correta seria SELECT Número, Capacidade, Nome FROM Sala WHERE Capacidade > 4;. Também falta a cláusula FROM.
Alternativa C — ❌ Incorreta
SELECT Sala (∗) WHERE Capacidade > 4; — o asterisco não deve ficar entre parênteses, e o nome da tabela não deve preceder a lista de colunas. A sintaxe correta é SELECT * FROM Sala WHERE Capacidade > 4;. Novamente, falta o FROM.
Alternativa D — ❌ Incorreta
SELECT Número ... Nome FROM Sala WHERE Capacidade > 4; — o uso de ... (reticências) não é válido em SQL para indicar colunas intermediárias. A forma correta seria listar todas as colunas explicitamente: SELECT Número, Capacidade, Nome FROM Sala WHERE Capacidade > 4;.
Alternativa E — ✅ Correta ⟵ GABARITO
SELECT * FROM Sala WHERE Capacidade > 4; — esta é a sintaxe canônica: SELECT * seleciona todas as colunas, FROM Sala indica a tabela de origem e WHERE Capacidade > 4 filtra as linhas com capacidade maior que 4. O resultado trará Número, Capacidade e Nome das salas que atendem à condição.
PEGA ESSA DICA!
Na hora da prova, desconfie de qualquer alternativa que coloque o nome da tabela ou o asterisco entre parênteses, ou que omita a cláusula FROM. A estrutura do SELECT é rígida: SELECT <colunas> FROM <tabela> [WHERE <condição>]. Memorize esse esqueleto e você elimina rapidamente os distratores.