Pular para o conteúdo principal

Questão de Banco de Dados — Banco de Dados Relacionais — INSTITUTO AOCP 2024

Banco de DadosBanco de Dados Relacionais
Código
qg261787
Banca
INSTITUTO AOCP
Órgão
SANEPAR
Ano
2024
Nível
Superior
Cargo
Profissional - Analista de Informática
Como analista de informática da Sanepar, você foi incumbido de manipular o banco de dados da empresa para realizar uma consulta SQL (Structured Query Language) específica. Seu chefe solicitou que você extraísse uma lista contendo o identificador, nome e salário dos funcionários que recebem os três maiores salários na empresa, além disso, esses funcionários devem ter dependentes que estejam frequentando a escola. A consulta deve utilizar as tabelas Funcionários e Dependentes, e os salários devem estar ordenados do maior para o menor. Nesse contexto, assinale a alternativa que apresenta a consulta que atende às necessidades da tarefa que você deverá realizar.
  1. ASELECT f.FuncionarioID, f.Nome, f.SalarioFROM Funcionarios fJOIN Dependentes d ON f.FuncionarioID =d.FuncionarioIDWHERE d.Escola != ‘Sim’GROUP BY f.FuncionarioID, f.Nome, f.SalarioHAVING COUNT(d.DependenteID) > 0ORDER BY f.Salario ASCLIMIT < 3;
  2. BSELECT f.FuncionarioID, f.Nome, f.SalarioFROM Funcionarios fJOIN Dependentes d ON f.FuncionarioID =d.FuncionarioIDWHERE d.Escola != ‘Sim’GROUP BY f.FuncionarioID, f.Nome, f.SalarioHAVING COUNT(d.DependenteID) > 0ORDER BY f.Salario ASCLIMIT 3;
  3. CSELECT f.FuncionarioID, f.Nome, f.SalarioFROM Funcionarios fJOIN Dependentes d ON f.FuncionarioID !=d.FuncionarioIDWHERE d.Escola = ‘Sim’GROUP BY f.FuncionarioID, f.Nome, f.SalarioHAVING COUNT(d.DependenteID) < 0ORDER BY f.Salario DESCLIMIT 3;
  4. DSELECT f.FuncionarioID, f.Nome, f.SalarioFROM Funcionarios fJOIN Dependentes d ON f.FuncionarioID =d.FuncionarioIDWHERE d.Escola = ‘Sim’GROUP BY f.FuncionarioID, f.Nome, f.SalarioHAVING COUNT(d.DependenteID) > 0ORDER BY f.Salario DESCLIMIT 3;
  5. ESELECT f.FuncionarioID, f.Nome, f.SalarioFROM Funcionarios fJOIN Dependentes d ON f.FuncionarioID !=d.FuncionarioIDWHERE d.Escola = ‘Sim’GROUP BY f.FuncionarioID, f.Nome, f.SalarioHAVING COUNT(d.DependenteID) > 0ORDER BY f.Salario DESCLIMIT 3;
Revelar gabarito e comentário

GabaritoD — SELECT f.FuncionarioID, f.Nome, f.Salario FROM Funcionarios f JOIN Dependentes d ON f.FuncionarioID = d.FuncionarioID WHERE d.Escola = ‘Sim’ GROUP BY f.FuncionarioID, f.Nome, f.Salario HAVING COUNT(d.DependenteID) > 0 ORDER BY f.Salario DESC LIMIT 3;

Link permanente: /questoes/qg261787