Administração, perguntado por nicolelo1799, 1 ano atrás

Funcionarios (Codigo, PrimeiroNome, SegundoNome, UltimoNome, DataNasci, CPF, RG, Endereco, CEP, Cidade, Fone, CodigoDepartamento, Funcao, Salario) Departamentos (Codigo, Nome, Localizacao, CodigoFuncionarioGerente) 1. Liste os departamentos dos funcionários que têm a função de supervisor 2. Liste a quantidade de funcionários desta empresa 3. Liste o salário médio pago pela empresa 4. Liste o menor salário pago pela empresa em cada departamento 5. Liste o nome completo de todos os funcionários que não tenham segundo nome 6. Liste o nome do departamento e do funcionário ordenados por departamento e funcionário 7. Liste os nomes dos funcionários que moram em Recife e que exerçam a função de Telefonista 8. Liste os nomes dos funcionários que trabalham no departamento Pessoal 9. Liste o nome e o departamento de todos os funcionários que ganham mais do que algum gerente

Soluções para a tarefa

Respondido por joanamgalantinho
4

Exercício SQL:

Para listar os departamentos correspondentes aos funcionários que têm como função supervisor temos:

SELECT D.Nome, F.PrimeiroNome

FROM Departamentos D JOIN Funcionarios F

ON D.Codigo = F.CodigoDepartamento

 WHERE F.Funcao = ‘Supervisor’ ORDER BY D.Nome

Para listar a quantidade de funcionários da empresa temos:

SELECT COUNT(*) AS TotalFuncionarios

FROM Funcionarios

A listagem do salário médio pago pela empresa:

SELECT AVG(Salario) AS Media FROM Funcionarios

Para listar o menor salário pago pela empresa em cada departamento:

SELECT D.Nome, MIN(F.Salario)

FROM Funcionarios F JOIN Departamentos D

ON F.CodigoDepartamento = D.Codigo

GROUP BY D.Nome

Para listar o nome completo de todos os funcionários sem segundo nome temos:

SELECT PrimeiroNome, SegundoNome, UltimoNome

FROM Funcionarios

WHERE SegundoNome IS NULL ORDER BY PrimeiroNome, UltimoNome

Para listar o nome do departamento e funcionário, ordenados por departamento e funcionário:

SELECT D.Nome, F.PrimeiroNome

FROM Departamentos D JOIN Funcionarios F ON D.Codigo = F.CodigoDepartamento

ORDER BY D.Nome, F.PrimeiroNome

Para listar todos os nomes dos funcionários que moram em Recife e tenham como função telefonista:

SELECT PrimeiroNome

FROM Funcionarios

WHERE Cidade = ‘Recife’ AND Funcao = ‘Telefonista’

Para listar os nomes dos funcionários que trabalham no departamento de pessoal:

SELECT PrimeiroNome

FROM Funcionarios

WHERE CodigoDepartamento =

(SELECT Codigo

FROM Departamentos WHERE Nome = ‘Pessoal’)

Por último, a listagem com o nome e o departamento de todos os funcionários que ganham mais do que algum gerente:

SELECT F.PrimeiroNome, D.Nome

FROM Funcionarios F JOIN Departamentos D ON F.CodigoDepartamento = D.Codigo WHERE F.Salario > SOME (

SELECT Salario FROM Funcionarios WHERE Codigo IN (

SELECT CodigoFuncionarioGerente FROM Departamentos ) );

Perguntas interessantes