Está en la página 1de 5

Ejercicio CONSULTAS SQL ENUNCIADO

Partiendo de las tablas EMP (Empleados) y DEPT (Departamentos) que incorpora Oracle
como ejemplo cuando se crea un Workspace, realiza las siguientes consultas.
IMPORTANTE: Las sentencias no deben contener errores sintácticos. No se admitirán
sentencias que fuercen la salida a la captura de pantalla que se indica.

Se facilita información sobre la estructura de las tablas y su contenido:

 
CREATE TABLE  "DEPT"    (  
"DEPTNO" NUMBER(2,0),   ‐‐ DEP.NRO 
  "DNAME" VARCHAR2(14),     ‐‐ NOMBRE 
  "LOC" VARCHAR2(13),   ‐‐ LOCALIDAD 
   PRIMARY KEY ("DEPTNO") ENABLE    ) ; 
   
CREATE TABLE  "EMP"    (   
"EMPNO" NUMBER(4,0),  ‐‐ EMPLEADO NRO (CODIGO)   
  "ENAME" VARCHAR2(10),     ‐‐ NOMBRE 
  "JOB" VARCHAR2(9),    ‐‐ OFICIO 
  "MGR" NUMBER(4,0),    ‐‐ COD_JEFE (Manager Group) 
  "HIREDATE" DATE,     ‐‐ FECHA DE ALTA (Fecha de Contratación) 
  "SAL" NUMBER(7,2),    ‐‐ SALARIO 
  "COMM" NUMBER(7,2),   ‐‐ COMISION 
  "DEPTNO" NUMBER(2,0),   ‐‐ NRO.DEPARTAMENTO 
   PRIMARY KEY ("EMPNO") ENABLE    ) ; 
 
ALTER TABLE  "EMP" ADD FOREIGN KEY ("MGR")     REFERENCES    "EMP"  ("EMPNO") 
ENABLE; 
ALTER TABLE  "EMP" ADD FOREIGN KEY ("DEPTNO")  REFERENCES  "DEPT" ("DEPTNO") 
ENABLE; 
 
Nro Emp Nombre oficio cod_jefe f_alta salario comision dep.nro
1.- Listar el nombre de los empleados, departamento y localidad,
salario,comisiones, sueldo mes y sueldo año de los que trabajen en la localidad de
Chicago.
(Sueldo_mes = sal + comm, Sueldo_anio = sueldo_mes por 12 )
(Utilizar las funciones que consideréis necesarias para obtener el formato de salida que
se indica Æ )

2.- Listar el nombre de los empleados que no tienen


comisión ordenados alfabéticamente.
(Utilizar las funciones que consideréis
necesarias para obtener el formato de salida que
se indica Æ )

3.- Obtener un resumen del número de empleados por departamento y su salario


medio.
(Aplicar los criterios de ordenación que consideréis oportunos para obtener el formato
de salida que se indica Æ )
4.- Mostrar un listado del codigo, nombre y gasto de
personal (salarios + comisiones) de los
departamentos, ordenado por criterio descendente
de gasto de personal.

5.- Listar el salario minimo, maximo y medio


para cada departamento,
indicando el numero de departamento al que
pertenece el dato.
(Utilizar las funciones que consideréis
necesarias para obtener el formato de salida
que se indica Æ )

6.- Relación de empleados que fueron contratados un jueves.


(Utilizar las funciones que estiméis necesarias para obtener el formato de salida que se
indica Æ )
hiredate=fecha de contrato
Obtener la fecha en formato dia, mes y año y el literal del mes en español.
Orden del listado: dia y nombre de empleado.

7.- Listar los departamentos que tengan algun empleado que gane mas de 35.000
euros al año (Recuerda que el salario es mensual). Pista: Utilizar subconsultas.
a) Obtener el codigo del departamento al que pertenece el empleado que tiene un
salario superior a los 35000 euros al año.
b) Obtener el nombre del departamento cuyo codigo se encuentra en la consulta
generada anteriormente.
8.- Obtener la relación de todos los empleados con indicación del nombre de su
jefe.
(Existe un empleado que no tiene jefe que también debe aparecer en la salida).
Ordenar la salida por MGR (Código de jefe) ascendente.
 

9.- Mostrar los departamentos que tienen mas de una persona trabajando en el
mismo oficio.
(Datos y formato de salida Æ )
dname=nombre, job=oficio

10 Muestra el nombre del empleado que más gana y del que menos gana, junto con
su salario mensual (sal).
(Datos y formato de salida Æ )
11.- Muestra una lista de los departamentos con menos de 5 empleados
(Hay que considerar que pueden existir departamentos sin empleados, en cuyo caso,
debe aparecer un cero).
(Datos y formato de salida Æ )

12.- Mostrar los datos del departamento que no tiene ningún empleado.

13.- Muestra el total de dinero ganado por los empleados que trabajan en el mismo
departamento que Adams, desde que se incorporaron a la empresa suponiendo que
el salario no ha cambiado en todo ese tiempo.
(Datos y formato de salida Æ )
No es válido indicar el código de departamento directamente.

Generar un documento .sql con las sentencias correspondientes.

También podría gustarte