Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1.Obtenernombreysalariodeempleado,nombrededepartamento
yelnombredelaciudadparaaquellosempleadosquetienenun
salariopordebajo
delamediasalarialdesudepartamento.
SELECTE.FIRST_NAME,E.SALARY,D.DEPARTMENT_NAME,L.CITY
FROMEMPLOYEESE,DEPARTMENTSD,LOCATIONSL,(
SELECTDEPARTMENT_ID,ROUND(AVG(SALARY))SFROMEMPLOYEESGROUPBY
DEPARTMENT_ID)T
WHEREE.SALARY<T.SAND
E.DEPARTMENT_ID=T.DEPARTMENT_IDAND
E.DEPARTMENT_ID=D.DEPARTMENT_IDAND
D.LOCATION_ID=L.LOCATION_ID;
2.Desplegarloscdigos,nombresyoficiosquedesempearonlos
empleadosque
fueronrecontratados.
SELECTE.EMPLOYEE_ID,FIRST_NAME,E.JOB_ID
FROMEMPLOYEESE,JOB_HISTORYJ
WHEREE.EMPLOYEE_ID=J.EMPLOYEE_ID;
3.Mostrarloscodigos,apellidosynombresdedepartamentode
aquellosempleados
quefueroncontratadosundamartesdeunmesqueseintroducepor
teclado,
nointeresaelao.NopuedeutilizarLIKE.
selectEMPLOYEE_ID,LAST_NAME,DEPARTMENT_NAME,to_char(HIRE_DATE
,'fmday')DIA
fromEMPLOYEESe,DEPARTMENTSd
whereE.DEPARTMENT_ID=D.DEPARTMENT_ID
andto_char(HIRE_DATE,'fmday')='martes'
and(to_char(HIRE_DATE,'fmmm')=&A);
4.Obtenerelnombredeldepartamentoquetienelamayorcantidad
deempleados.
selectDEPARTMENT_NAME
fromDEPARTMENTSd,EMPLOYEESe
whereE.DEPARTMENT_ID=D.DEPARTMENT_ID
groupbye.DEPARTMENT_ID,DEPARTMENT_NAME
havingcount(*)=(selectmax(count(*))fromEMPLOYEESgroupbyDEPARTMENT_ID
);
5.UtilizarOR.Crearelscriptrespectivo.
createorreplacetypelector_Tasobject
(cod_lectorvarchar2(30),nombrechar(15),fononumber(15))
/
createorreplacetypematerial_Tasobject
(cod_materialvarchar2(30),titulochar(15),fecha_ediciondate)NOTFINAL
/
createorreplacetypelibroundermaterial_T
(cod_librovarchar2(30),areachar(30))
/
createorreplacetypeautor_Tasobject
(cod_autorvarchar2(30),nombre_achar(30),emailvarchar2(30))
/
creaciondetablas
createtablelectoroflector_T
(cod_lectornotnull,primarykey(cod_lector));
createtablematerialofmaterial_T
(cod_materialnotnull,primarykey(cod_material));
createtablelibrooflibro_T
(cod_libronotnull,primarykey(cod_libro));
createtableautorofautor_T
(cod_autornotnull,primarykey(cod_autor));
createtableusa(lectorreflector_T,materialrefmaterial_T);
createtableescribe
(cod_lectornotnull,primarykey(cod_lector));
6.Obtenerlosnombresdelosempleadosdequetienenelmenory
mayorsalarioademsdelosnombresdedepartamentodondetrabajan
selectFIRST_NAME,DEPARTMENT_NAME
fromemployeesjoindepartments
using(department_id)
wheresalaryin(selectmin(salary)fromemployeesgroupbydepartment_id)
orsalaryin(selectmax(salary)fromemployeesgroupbydepartment_id)
selectFIRST_NAME,DEPARTMENT_NAME,CITY
fromEMPLOYEESe,DEPARTMENTSd,LOCATIONSl
whereE.DEPARTMENT_ID=D.DEPARTMENT_ID
andD.LOCATION_ID=L.LOCATION_ID
and(
SALARYIN(selectmin(SALARY)fromEMPLOYEESGROUPBYDEPARTMENT_ID)or(
SALARYIN(selectmax(SALARY)fromEMPLOYEESGROUPBYDEPARTMENT_ID)
));
Mostrartodoslosdepartamentosenlosquesusempleadoscobran,
enpromedio,masqueloquecobran,enpromedio,losempleadosdel
departamento50
SELECTD.DEPARTMENT_NAME,ROUND(AVG(E.SALARY))
FROMDEPARTMENTSD,EMPLOYEESE
WHEREE.DEPARTMENT_ID=D.DEPARTMENT_ID
ANDSALARY>(SELECTROUND(AVG(SALARY))FROMEMPLOYEESWHERE
DEPARTMENT_ID=50)
GROUPBYD.DEPARTMENT_NAME;
visualizarelnombre,ndedepartamento,salarioycomisionde
cualquierempleado
cuyosalarioycomisionsecorrespondaconlacomisionysalariode
cualquierempleado
deldepartamento30.
SELECTE.FIRST_NAME,E.DEPARTMENT_ID,E.SALARY,E.COMMISSION_PCT
FROMEMPLOYEESE,EMPLOYEESC
WHEREE.SALARY=C.SALARY
ANDE.COMMISSION_PCTISNULL
ANDC.DEPARTMENT_ID=30;
DESPLEGARLOSNOMBRESDELOSEMPLEADOSYSUSAPELLIDOS
ADEMASELNOMBREDELDEPARTAMENTOENELQUETRABAJA
SELECTE.FIRST_NAME,E.LAST_NAME,D.DEPARTMENT_NAME
FROMEMPLOYEESE,DEPARTMENTSD
WHEREE.DEPARTMENT_ID=D.DEPARTMENT_ID;
DESPLEGARLOSNOMBRESDELOSEMPLEADOSYSUSAPELLIDOS
ADEMASELCODIGODELDEPARTAMENTOENELQUETRABAJA
SELECTE.FIRST_NAME,E.LAST_NAME,E.DEPARTMENT_ID
FROMEMPLOYEESE;
SELECTFIRST_NAME,LAST_NAME,DEPARTMENT_ID
FROMEMPLOYEES;
SELECTEMPLOYEES.FIRST_NAME,EMPLOYEES.LAST_NAME,DEPARTMENTS.DEPARTMENT_
NAME
FROMEMPLOYEES,DEPARTMENTS
WHEREEMPLOYEES.DEPARTMENT_ID=DEPARTMENTS.DEPARTMENT_ID;