bases2

Páginas: 5 (1129 palabras) Publicado: 11 de diciembre de 2013
1. cantidad de tablas del usuario
select count (*)
from user_tables;
2.

consulta que me permita obtener la cantidad de empleados de la companiam que fueron contratados
en los años 93,94,95,96,98,99
select to_char(e.hire_date, 'yy') año,count(*) from employees e
where to_char(e.hire_date, 'yy') in ('93','94', '95','96', '97','98', '99')
group by to_char(e.hire_date, 'yy')
order byto_char(e.hire_date, 'yy') asc;
2
Select Sum(Decode(to_char(hire_date, 'yyyy'), 1994, 1)) año_1994,
Sum(Decode(to_char(hire_date, 'yyyy'), 1995, 1)) año_1995,
Sum(Decode(to_char(hire_date, 'yyyy'), 1996, 1)) año_1996,
Sum(Decode(to_char(hire_date, 'yyyy'), 1997, 1)) año_1997,
Sum(Decode(to_char(hire_date, 'yyyy'), 1998, 1)) año_1998,
Sum(Decode(to_char(hire_date, 'yyyy'), 1999, 1)) año_1999,Sum(Decode(to_char(hire_date, 'yyyy'), 1994,1 ,1995, 1, 1996, 1, 1997, 1, 1998, 1,1999,1, 0)) Total
from employees;
3. consulta que permita obtener ID de cada empleado
select e.employee_id cedulas
from employees e ,departments d, jobs j
where e.department_id= d.department_id and
e.job_id= j.job_id;

4.

obtener el id el apellido el nombre y el nombre de cargo actual del empleado que mas haocupado
cargos en la compañia
select e.employee_id, e.first_name, e.last_name, e.job_id
from employees e, job_history jh, departments d, jobs j
where e.department_id = d.department_id and
jh.department_id = d.department_id and
jh.department_id = e.department_id and
j.job_id =jh.job_id
group by e.employee_id , e.first_name, e.last_name, e.job_id
having count (*)= (select MAX (count(jh.employee_id))
from job_history jh
where jh.employee_id = e.employee_id
group by jh.employee_id);
5.

crear la tabla empleado 50 en el esquema HR que contenga los empleados de la tabla employees del
departamento 50
drop table empleados50;
create table empleados50 as
select employee_id as ID, first_name as Nombre, last_name as Apellido, email as Correo
from employees
wheredepartment_id=50;
select * from empleados50;

6.

insertar en la tabla empleados50 los registros de la tabla employees para los empleados del
departamento 80
insert into empleados50 (select employee_id, first_name,last_name,email
from employees where department_id=80
);

7. cuantos empleados existen en el departamento 80
select count (*)
from employees
where department_id=80;
drop tableempleados50;

8. crear la tabla anterior pero sin registros create table empleados50 as
select e.*
from employees e
where 1=2;

9. insertar todos los campos de la tabla employees de los empleados que trabajen en el departamento 80
insert into empleados50
select e.*
from employees e
where department_id=80;
10. agregar a la tabla usuario una colomna salario de igual tipo de dato que el de lacolumna de employees
alter table empleados50 ADD salario NUMBER(8,2);
alter table empleados50 drop column salary;
11. ACTUALIZAR el salario de la tabla empleados50 con el salario correspondiente a los empleados de la
tabla employees aplicando el porcentaje de comision
update empleados50
set salario=salario + (salario*((select avg(NVL(commission_pct,0))
from employees)/100));

12. actualizar elsalario de la tabla empleados50 asignando a todos los empleados el resultado de aplicar
la maxima comision de lo empleados a cargo de almbero errazuriz al del minimo salario de los
empleados del departamento 10 de la tabla employees
update empleados50
set salario = (select (max (commission_pct))
from employees e
where e.manager_id = (select e1.manager_id
from employees e1
wheree1.first_name = 'alberto' and e1.last_name = 'errazuriz' ));
13. crear una tabla tot que contenga:
a. las columnas de las tablas empleados50 y de la tabla empoyees que no estan en la tabla empleados50
mas la columna salario comision que se llamara salariocom, la columna id se llamara
cedula.
b. la tabla incluira solamente los registros de la tabla employees donde el salario este entro 2000 y 7000
c....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Bases2
  • Bases2 5

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS