Practica 11 informática
Enviado por Colegio Frosting • 13 de Mayo de 2021 • Apuntes • 898 Palabras (4 Páginas) • 66 Visitas
Practica 11
1. Obtener el nombre del empelado cuya longitud de nombre sea entre 6 y 7
select nombre from empleado where length(nombre) between 6 and 7;
[pic 1]
2. Obtener una lista con el nombre completo de los empelados cuyo año de contratación haya sido 2004, 2001 o 2009
select nombre, extract(year from fecha_contratacion) as AÑO, to_char(fecha_contratacion, 'YYYY')
año from empleado
where extract(year from fecha_contratacion)='2001'
or extract(year from fecha_contratacion)='2004'
or extract(year from fecha_contratacion)='2009';
[pic 2]
3. Obtener el tiempo que ha trabajado cada empleado en la empresa (Mostrar nombre completo (solo el nombre debe estar en mayúsculas-omitir formato en apellidos), nombre del departamento al que pertenece, nombre del cargo) donde el nombre del empleado no inicie con J y tenga comisión.
select UPPER(e.nombre), e.apellido_paterno, e.apellido_materno, d.nombre, c.nombre,
age(e.fecha_contratacion) as Tiempo_trabajando, to_char(fecha_contratacion, 'YYYY')
Inicio_trabajo, e.porcentaje_comision,
c.id_cargo, e.id_departamento, e.id_cargo, d.id_departamento
from empleado e, departamento d, cargo c where e.id_departamento = d.id_departamento and
e.id_cargo = c.id_cargo and e.porcentaje_comision is not null and
e.nombre not like 'J%';
[pic 3]
4. Obtener el listado de empleados (nombre completo y nombre del departamento) de todos aquellos que cumplen años en el mes de enero.
select e.nombre, e.apellido_paterno, e.apellido_materno, d.nombre, e.fecha_nacimiento,
d.id_departamento, e.id_departamento, extract(month from e.fecha_nacimiento)
from empleado e, departamento d where d.id_departamento=e.id_departamento and
extract(month from e.fecha_nacimiento)=1;
[pic 4]
5. Dar de alta un registro de empleado donde se inserte el nombre completo del empleado en mayúsculas.
insert into empleado (id_empleado, nombre, apellido_paterno, apellido_materno, edad, sexo,
sueldo, id_departamento, id_cargo )
values ('20', 'ARANZA', 'MAYO', 'CONTRERAS', '4', 'M', '150000', '1', '4');
[pic 5]
6. Actualizar el nombre del departamento a mayúsculas donde se encuentre el empleado con el sueldo más alto.
UPDATE departamento SET nombre=UPPER(nombre) where id_departamento= (select id_departamento from
empleado where sueldo = (select max(sueldo)from empleado));
[pic 6]
7. Insertar tres empleados con la fecha actual (el ultimo deberá llevar por nombre Mitzi
insert into empleado
(id_empleado, nombre, apellido_paterno, apellido_materno, edad, sexo,
sueldo, id_departamento, id_cargo, fecha_contratacion )
values ('21', 'Viczenza', 'Crotte', 'Coul', '4', 'M', '150000', '1', '4', CURRENT_DATE),
('22', 'Danna', 'Rivera', 'Munguia', '4', 'M', '150000', '1', '4', CURRENT_DATE),
('23', 'Mitzi', 'Mausole', 'Chavez', '4', 'M', '150000', '1', '4', CURRENT_DATE);
[pic 7]
8. Obtener la fecha de contratación del empleado con el formato año(de dos dígitos)-mes(abreviación en minúsculas)- dia(default) su nombre, apellido y su sueldo en donde el id del empleado sea menor a 10 y su nombre comience con la letra a
SELECT id_empleado, nombre, apellido_paterno, apellido_materno, sueldo,
fecha_contratacion, to_char(fecha_contratacion, 'YY/MM/DD')
from empleado where id_empleado<10 and nombre like '%A%';
[pic 8]
9. Eliminar un empleado con la fecha actual y de nombre Mitzi.
...