domingo, 3 de julio de 2011

►Consultas SQL.-

1) Escriba el comando DDL que defina la llave foránea de EMPLEADO referenciando OFICINA 

Alter table EMPLEADO
add constraint fk_empleado_ref_Oficina
foreign key(NUMOFICINA) references
OFICINA (NUMOFICINA);



2) INSERTAR 2 REGISTROS EN EMPLEADO

primero insertamos UN registro a OFICINA
insert into OFICINA values ('0001', 'Alonso Ovalle', 'Santiago','56');

...Ahora van los Empleados.
insert into EMPLEADO values('E007','James','Bond','Espia','M','01/01/1939',200000,'0001');



3) Desarrolle una consulta SQL que liste todos los empleados que tienen un salario inferior a 1500

select *
from Empleado
where salario < 100000;


4) desarrolle una consulta SQL que liste todos los empleadois Hombre que tienen un cargo de Supervisor

select *
from Empleado
where lower(cargo) = 'supervisor';


5) Indicar el comando DDL necesario para agregar el atributo TotPropiedades a la tabla Oficina

Alter table OFICINA
add TotPropiedades number


6) Emitir un listado con el numero de empleados que trabajan en la ciudad de 'SANTIAGO'

select count(NUMOFICINA)
from empleado
where numOficina in
(select numOficina
from Oficina
where ciudad = 'santiago');


7) Listar NUMPROPIEDAD de las propiedades que han sido visitadas, eliminando los repetidos


select distinCt NUMPROPIEDAD
from VISITA;


opcion 2
select NUMPROPIEDAD
from PROPIEDAD
where NUMPROPIEDAD in(select NUMPROPIEDAD from VISITA);


8)Listar NUMPROPIEDAD de las propiedades que han sido visitadas, pero los clientes no han emitido comentario

select distinct NUMPROPIEDAD
from VISITA
where comnetario is NULL


9)Listar todos los Empleados, ordenados por Sexo y descendente por fecha de nacimiento

select *
from Empleado
order by sexo, FECHANAC DESC;


11) Indique el comando necesario para eliminar la vista vistaPromedioRentaPropiedad creada en la pregunta anterior. (5 Puntos) */

drop view vistaPromedioRentaPropiedad;


12) Indique la instrucción para eliminar la referencia a la tabla Oficina desde la tabla Empleado
(La foreign key FK_EMPLEADO_REFERENCE_OFICINA) (10 puntos) */

alter table Empleado
drop constraint FK_EMPLEADO_REFERENCE_OFICINA


13) Escriba la sentencia para eliminar la tabla Empleado junto a sus llaves foráneas.(10 Puntos)*/

drop table empleado cascade constraint


14) Indique el comando para actualizar la fecha de nacimiento (fechNac) del empleado ‘SL21’ a '01/07/2011' (10 puntos) */

update empleado
set fechNac = '01/07/2011'
where numempleado = ‘SL21’ 


15) Indique el comando necesario para listar todos los empleados nacidos entre el año 1970 y 1980, ambas fechas inclusive. (10 puntos) */

select *
from Empleado
where to_char(FechNac, 'YYYY') between '1950' and '1960'

select *
from Empleado
where fechnac >= '01/01/1950' and fechnac <= '31/12/1960'

No hay comentarios:

Publicar un comentario