Prévia do material em texto
Atividade 15/04 Exercícios – Geral + View 1. Criar uma consulta para selecionar os empregados que recebam salário igual ou superior a 10000 e que tenham a palavra “MAN” em seu cargo (job_id). R:select * from hr.employees where salary>=10000 and job_id like('%MAN%'); 2. Exibir o menor salário, maior salário e soma dos salários para todos os empregados que tenham a palavra “REP” em seu cargo (tabela Employees). R:select min(salary) as minimo,max(salary) as maximo ,sum(salary) as soma from hr.employees where job_id like('%REP%'); 3. Exibir a menor e a maior data de contratação dos funcionários (tabela Employees) R:select min(hire_date) as menor,max(hire_date) as maior from hr.employees; 4. Qual a quantidade de funcionários do departamento 50 (tabela Employees) R: select count(*) from hr.employees where department_id=50; 5. Exibir a média salarial por departamento, considerando apenas aqueles departamentos com média maior que 7000 R: select department_id,avg(salary) from hr.employees group by department_id having avg(salary)>7000; 6. Criar uma visão contendo os campos código do empregado, nome e cargo. Utilize alias para as colunas. Mostrar a estrutura e exibir o conteúdo da visão. R: create view ex6 as select empno as codigo ,ename as nome ,job as cargo from scott.emp; Desc ex6 Select * from ex6; 7. Criar uma visão contendo os campos nome, cargo e data de admissão, para os empregados do depto 30 e que recebam salário maior que 1500. Exibir o conteúdo da visão. R:create view ex7 as select ename as nome ,job as cargo,hiredate as data_admissão from scott.emp where deptno =30 and sal>1500; Select * from ex7; 8. Criar uma visão contendo código do empregado, nome, cargo e data de admissão, somente dos empregados com cargo de ‘salesman’ ou ‘clerk’. Exibir o conteúdo da visão. R:create view ex8 as select ename as nome ,job as cargo,hiredate as data_admissão,empno as codigo from scott.emp where job= upper('salesman') or job=upper('clerk'); select * from ex8; 9. Criar uma visão contendo nome, cargo, código do departamento para os empregados dos departamentos 10 e 20. Exibir o conteúdo da visão. R:create view visao01 as select deptno, ename, job from scott.emp where deptno=10 or deptno=20; select * from visao01; 10. Criar uma visão denominada depart_IT, com as colunas código e nome do departamento tabela Departments. Exibir somente os departamentos que tenham “IT” ou “Sales” em seu nome. Exibir o conteúdo da visão. R: create view depart_IT as select department_id as codigo, department_name as nome_do_departamento from hr.departments where department_name like('%IT%') OR department_name like('Sales'); select * from depart_IT ; 11. Criar uma visão contendo os campos nome, cargo e data de admissão, para os empregados que recebem salário maior que 1500 e que trabalham nos departamentos 30 e 10. Exibir o conteúdo da visão. R:create view visao03 as select ename, job, hiredate from scott.emp where sal>1500 and (deptno=30 or deptno=10); select * from visao03; 12. Para o exercício 2, atualizar a visão para incluir também o depto 10. R: create or replace view ex7 as select ename as nome ,job as cargo,hiredate as data_admissão from scott.emp where (deptno =30 or deptno =10) and sal>1500; 13. Criar uma visão contendo o nome, sobrenome do empregado, código do departamento e o respectivo nome do departamento. Tabelas Employees e Deparments. R: create view visao_13 as select FIRST_NAME, last_name, employees.DEPARTMENT_ID , DEPARTMENT_NAME from hr.departments, hr.employees where employees.DEPARTMENT_ID = departments.DEPARTMENT_ID;