Exercício banco de dados
Por: Adson Lauriano • 12/12/2018 • Resenha • 469 Palavras (2 Páginas) • 297 Visualizações
--Banco de dados EMPRESA
USE dbEmpresa
SELECT * FROM EMP
SELECT * FROM DEPT
--Quantos empregados não possuem comissão?
SELECT COUNT(ISNULL(COMISSAO, 0)) AS 'Sem comissão'
FROM EMP
--Quantos empregados possuem comissão?
SELECT COUNT(COMISSAO) AS 'Com comissão'
FROM EMP
--- Qual o menor e maior salário da empresa?
SELECT MAX(SALARIO) AS 'Maior Salário',
MIN(SALARIO) AS 'Menor Salário'
FROM EMP
--Considerando somente os departamentos 10 e 20, qual o menor e maior salário?
SELECT DEPTNO AS 'Departamento',
MAX(SALARIO) AS 'Maior Salário',
MIN(SALARIO) AS 'Menor Salário'
FROM EMP
WHERE DEPTNO IN (10, 20)
GROUP BY DEPTNO
--Qual a média salarial dos empregados que ganham mais de R$ 2000,00?
SELECT AVG(SALARIO) AS 'Média Salarial'
FROM EMP
WHERE SALARIO > 2000
--Quando foram realizadas a primeira e a última contratação de um empregado?
SELECT MIN(DATACONTRATACAO) AS 'Primeira Contratação',
MAX(DATACONTRATACAO) AS 'Última Contratação'
FROM EMP
--Quantos cargos existem na tabela EMP?
SELECT COUNT(DISTINCT CARGO) AS 'Cargos'
FROM EMP
--Quantos gerentes (coluna GERENTE) existem na tabela EMP?
SELECT COUNT(DISTINCT GERENTE) AS 'Gerentes'
FROM EMP
--Quantos departamentos possuem pelo menos um empregado?
SELECT DEPTNO AS 'Departamento',
COUNT(EMPNO) AS 'Funcionários'
FROM EMP
GROUP BY DEPTNO
--Exibir o código dos gerentes (coluna GERENTE) e a quantidade de empregados gerenciados por ele.
SELECT ISNULL(GERENTE, 0) AS 'Código Gerente',
COUNT(EMPNO) AS 'Funcionario'
FROM EMP
GROUP BY GERENTE
--Exibir o salário, o código e nome dos 3 empregados que possuem o menor salário dentro da empresa.
SELECT TOP 3 SALARIO AS 'Salário',
EMPNO AS 'Código',
NOME AS 'Nome'
FROM EMP
ORDER BY Salário
--Exibir a quantidade de empregados da tabela EMP separados por cargo e departamento.
SELECT DEPTNO AS 'Departamento',
CARGO AS 'Cargo',
COUNT(EMPNO) AS 'Funcionários'
FROM EMP
GROUP BY CARGO, DEPTNO
/*Exibir o código e nome dos departamentos, bem como o seu maior salário,
mas somente para os departamentos que possuem mais de 4 empregados.*/
SELECT D.DEPTNO AS 'Departamento',
D.NOME AS 'Nome',
MAX(E.SALARIO) AS 'Salário'
FROM EMP AS E JOIN DEPT AS D
ON E.DEPTNO = D.DEPTNO
GROUP BY D.DEPTNO, D.NOME
HAVING COUNT(E.EMPNO) > 4
/*Exibir o código e nome do departamento, sua média salarial,
mas somente para os departamentos que possuem o salário mínimo maior que R$ 1000.*/
SELECT D.DEPTNO AS 'Departamento',
D.NOME AS 'Nome',
AVG(E.SALARIO) AS 'Média Salarial'
...