Pular para o conteúdo principal

Questão de Banco de Dados — Banco de Dados Relacionais — FUNTEF - PR 2025

Banco de DadosBanco de Dados Relacionais
Código
qg488169
Banca
FUNTEF - PR
Órgão
UTFPR
Ano
2025
Nível
Médio
Cargo
Técnico de Laboratório/Informática
Considere que você possui um banco de dados com a tabela “Usuarios” que contém as colunas “Nome”, “Email” e “Salário”. Analisando a seguinte consulta SQL:SELECT Nome FROM Usuarios WHERE Salário = (SELECT MAX(Salário) FROM Usuarios);Qual o resultado esperado desta consulta?
  1. ARetorna o nome do usuário com o menor salário presente na tabela.
  2. BRetorna os nomes de todos os usuários, independentemente do valor do salário.
  3. CRetorna o salário máximo e o nome do usuário em uma única coluna.
  4. DA consulta é inválida, pois subconsultas não podem ser usadas no WHERE.
  5. ERetorna o nome do usuário , cujo salário é igual ao maior salário registrado na tabela.
Revelar gabarito e comentário

GabaritoE — Retorna o nome do usuário , cujo salário é igual ao maior salário registrado na tabela.

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

Subconsulta SQL com MAX

A questão testa o entendimento de subconsultas escalares no SQL, especificamente o uso da função agregada MAX() dentro de uma subconsulta na cláusula WHERE. A consulta retorna o nome do(s) usuário(s) cujo salário é igual ao maior salário da tabela.

Alternativa A — ❌ Incorreta

Afirma que retorna o nome do usuário com o menor salário. A subconsulta usa MAX(Salário), que retorna o maior valor, não o menor. O correto para o menor salário seria MIN(Salário).

Alternativa B — ❌ Incorreta

Afirma que retorna os nomes de todos os usuários. A cláusula WHERE filtra apenas os registros cujo salário é igual ao máximo, portanto apenas os usuários com o maior salário são retornados.

Alternativa C — ❌ Incorreta

Afirma que retorna o salário máximo e o nome em uma única coluna. A consulta seleciona apenas a coluna Nome (SELECT Nome), e a subconsulta retorna um único valor (o salário máximo) que é usado na comparação, mas não é exibido no resultado final.

Alternativa D — ❌ Incorreta

Afirma que a consulta é inválida porque subconsultas não podem ser usadas no WHERE. Isso é falso: subconsultas escalares (que retornam um único valor) são perfeitamente válidas na cláusula WHERE em SQL padrão.

Alternativa E — ✅ Correta

A consulta retorna o nome do(s) usuário(s) cujo salário é igual ao maior salário registrado na tabela. A subconsulta (SELECT MAX(Salário) FROM Usuarios) calcula o maior salário, e a condição WHERE Salário = ... filtra os registros que atendem a esse valor. O SELECT Nome projeta apenas a coluna Nome.

PEGA ESSA DICA!

Lembre-se de que MAX() e MIN() são funções agregadas que retornam um único valor. Subconsultas escalares podem ser usadas em qualquer lugar onde uma expressão de valor único é esperada, como no WHERE, HAVING ou mesmo no SELECT.

Gabarito: letra E

Link permanente: /questoes/qg488169