Sei sulla pagina 1di 3

EXAMENBASEDEDATOS

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;

Potrebbero piacerti anche