Pular para o conteúdo principal

Questão de Banco de Dados — SQL — Quadrix 2025

Banco de DadosSQL
Código
qg594439
Banca
Quadrix
Órgão
CAU-MA
Ano
2025
Nível
Médio
Cargo
Assistente de Tecnologia da Informação
A empresa ArqUrban de São Luís‑MA, especializada em projetos de arquitetura e urbanismo, mantém um banco de dados para armazenar informações sobre projetos, clientes e equipes de trabalho. Foi solicitado a um técnico de TI que analisasse algumas consultas SQL básicas feitas por um estagiário e verificar se estão corretas para obter as informações desejadas. 
Com base nessa situação hipotética, julgue o item seguinte.A consulta SELECT * FROM projetos WHERE cidade = ‘São Luís’; retorna todos os projetos realizados na cidade de São Luís.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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”.

Consulta SQL com cláusula WHERE

Gabarito: CERTO (letra C). A consulta SELECT * FROM projetos WHERE cidade = 'São Luís'; está sintaticamente correta e, ao filtrar as linhas da tabela projetos cujo valor da coluna cidade seja exatamente a string 'São Luís', retorna todos os projetos realizados nessa cidade. A cláusula WHERE é exatamente o mecanismo do SQL para filtrar linhas com base em uma condição, e a comparação de igualdade com uma string entre aspas simples é a forma padrão de expressar esse filtro.

A linguagem SQL (Structured Query Language) é a linguagem padrão para manipular bancos de dados relacionais. Uma consulta SELECT é composta por cláusulas que definem o que será retornado. A cláusula SELECT * indica que todas as colunas da tabela serão projetadas no resultado. A cláusula FROM projetos define a tabela de origem dos dados. E a cláusula WHERE cidade = 'São Luís' é o filtro que restringe as linhas retornadas àquelas em que o valor da coluna cidade é exatamente a string 'São Luís'. É importante notar que, em SQL, strings são delimitadas por aspas simples ('), e a comparação de igualdade é feita com o operador =. Portanto, a consulta retorna todas as linhas da tabela projetos que possuem o valor 'São Luís' na coluna cidade, ou seja, todos os projetos realizados nessa cidade.

A cláusula WHERE é o coração da filtragem de linhas em SQL. Ela é aplicada linha a linha, e apenas as linhas que satisfazem a condição especificada são incluídas no resultado. No contexto da álgebra relacional, o WHERE corresponde à operação de seleção (σ), que escolhe um subconjunto de tuplas de uma relação. Já o SELECT (a lista de colunas) corresponde à operação de projeção (π), que escolhe um subconjunto de atributos. Essa distinção é fundamental e frequentemente cobrada em provas: o SELECT define as colunas, o WHERE define as linhas.

Um ponto que pode gerar confusão é a diferença entre WHERE e HAVING. O WHERE filtra linhas individuais antes de qualquer agrupamento ou agregação. O HAVING, por sua vez, é usado para filtrar grupos de linhas depois que o GROUP BY é aplicado. Nesta questão, não há agrupamento, então o WHERE é a cláusula correta e suficiente para o filtro desejado.

Outra distinção importante é entre WHERE e JOIN. O JOIN combina colunas de duas ou mais tabelas com base em uma condição de relacionamento, enquanto o WHERE filtra linhas de uma única tabela (ou do resultado de um JOIN). Nesta questão, a consulta envolve apenas uma tabela (projetos), então o WHERE é a ferramenta adequada.

A banca explora aqui um conceito básico, mas fundamental: a função da cláusula WHERE em uma consulta SQL. O candidato que domina esse conceito identifica imediatamente que a consulta está correta. A pegadinha, se houvesse, seria confundir WHERE com HAVING, ou achar que a comparação de strings exigiria o operador LIKE (que é usado para correspondência de padrões, não para igualdade exata). Nenhuma dessas armadilhas está presente, tornando a questão direta.

1SELECT
Projeção (π) — colunas
2FROM
Tabela de origem
3WHERE
Seleção (σ) — linhas
Filtra antes do agrupamento
4HAVING
Filtra grupos após GROUP BY
5JOIN
Combina colunas de tabelas
Cláusulas SQL
LEVELsoulevel.com.br
Cláusulas SQL: SELECT (Projeção (π) — colunas); FROM (Tabela de origem); WHERE (Seleção (σ) — linhas, Filtra antes do agrupamento); HAVING (Filtra grupos após GROUP BY); JOIN (Combina colunas de tabelas)

Item — ✅ CERTO

A consulta SELECT * FROM projetos WHERE cidade = 'São Luís'; está correta. Ela seleciona todas as colunas (*) da tabela projetos e filtra as linhas onde o valor da coluna cidade é igual à string 'São Luís'. A sintaxe está perfeita: a cláusula WHERE é usada para filtrar linhas, o operador = compara igualdade, e a string está entre aspas simples, como exige o padrão SQL. Portanto, o resultado será exatamente todos os projetos realizados na cidade de São Luís.

Gabarito: CERTO (letra C).

Link permanente: /questoes/qg594439