Questão de Banco de Dados — Consultas e Comandos em SQL — Quadrix 2025
- Código
- qa699066
- Banca
- Quadrix
- Órgão
- CAU MA
- Ano
- 2025
- Cargo
- Ass TI ( )
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: CERTO (letra C). A consulta SELECT * FROM projetos WHERE cidade = 'São Luís'; retorna, de fato, todos os projetos cujo valor da coluna cidade seja exatamente 'São Luís', pois o comando SELECT * seleciona todas as colunas e a cláusula WHERE filtra as linhas que atendem à condição especificada. Essa é a semântica básica da linguagem SQL, conforme o padrão ANSI.
A linguagem SQL (Structured Query Language) é a linguagem padrão para acesso e manipulação de bancos de dados relacionais. Ela é uma linguagem declarativa, ou seja, o usuário especifica o que deseja obter, sem precisar detalhar como o banco deve executar a busca. A consulta apresentada é um exemplo clássico de consulta de seleção, que envolve três cláusulas principais:
SELECT *: projeta todas as colunas da tabela projetos. O asterisco (*) é um curinga que indica "todas as colunas".
FROM projetos: especifica a tabela de onde os dados serão recuperados.
WHERE cidade = 'São Luís': aplica uma condição de seleção, filtrando apenas as linhas (tuplas) em que o valor da coluna cidade seja exatamente a string 'São Luís'.
A cláusula WHERE é opcional, mas quando presente, define a condição booleana que deve ser verdadeira para que uma linha seja incluída no resultado. No caso, a condição é uma comparação de igualdade entre o valor da coluna cidade e o literal 'São Luís'. Portanto, o resultado da consulta será exatamente o conjunto de projetos realizados na cidade de São Luís, conforme afirma o enunciado.
É importante notar que a comparação de strings em SQL é, por padrão, case-sensitive em muitos SGBDs (como Oracle e PostgreSQL), o que significa que 'São Luís' é diferente de 'são luís'. No entanto, essa distinção não afeta a correção da afirmação, pois a consulta busca exatamente o valor 'São Luís' com essa grafia específica. A questão não apresenta nenhuma armadilha relacionada a maiúsculas/minúsculas ou a caracteres especiais.
A pegadinha que poderia existir aqui seria se a consulta usasse o operador LIKE com curingas (% ou _), que permitiria correspondência parcial, ou se houvesse uma questão de acentuação. Mas a consulta usa o operador de igualdade (=), que exige correspondência exata. Portanto, a afirmação está correta.
A consulta SELECT * FROM projetos WHERE cidade = 'São Luís'; está sintaticamente correta e semanticamente adequada ao objetivo de retornar todos os projetos realizados na cidade de São Luís. O SELECT * recupera todas as colunas da tabela projetos, e o WHERE filtra as linhas onde a coluna cidade é exatamente 'São Luís'. Não há erro de sintaxe, de lógica ou de referência a colunas inexistentes. A afirmação do enunciado é verdadeira.
Gabarito: letra C (CERTO).
Link permanente: /questoes/qa699066