CONSULTAS SQL EN ORACLE
Enviado por William Quimis • 23 de Noviembre de 2016 • Trabajo • 2.695 Palabras (11 Páginas) • 2.621 Visitas
CONSULTAS SQL EN ORACLE
Esquema Conceptual HR
[pic 1]
Esquema Físico HR
[pic 2]
- Desarrolle una consulta que liste el nombre del empleado, el código del departamento y la fecha de inicio que empezó a trabajar, ordenando el resultado por departamento y por fecha de inicio, el ultimo que entro a trabajar va de primero.
select PRIMER_NOMBRE, DEPARTAMENTO_ID, FECHA_CONTRATACION
from EMPLEADOS
order by DEPARTAMENTO_ID, FECHA_CONTRATACION desc;
- Desarrolle una consulta que liste el código, nombre y apellido de los empleados y sus respectivos fejes con titulo Empleado y Jefe:
select e1.EMPLEADO_ID||’ ‘||e1.PRIMER_NOMBRE||’ ‘||e1.APELLIDO as Empelado, e2.EMPLEADO_ID||’ ‘||e2.PRIMER_NOMBRE||’ ‘||e2.APELLIDO as Jefe
from EMPLEADOS e1,EMPLEADOS e2
where e1.GERENTE_ID=e2.EMPLEADO_ID;
- Desarrolle una consulta que liste los países por región, los datos que debe mostrar son: el código de la región y nombre de la región con los nombre se sus países.
select r.REGION_ID, REGION_NOMBRE, PAIS_NOMBRE
from REGIONES r, PAISES c
where r.REGION_ID=c.REGION_ID;
- Realice una consulta que muestre el código, nombre, apellido, inicio y fin del historial de trabajo de los empleados.
select e.EMPLEADO_ID, PRIMER_NOMBRE, APELLIDO, FECHA_INICIAL, FECHA_FINAL
from EMPLEADOS e,HISTORIAL_TRABAJO j
where e.EMPLEADO_ID=j.EMPLEADO_ID;
- Elabore una consulta que muestre el nombre y apellido del empleado con titulo Empleado, el salario, porcentaje de comisión, la comisión y salario total.
select PRIMER_NOMBRE||’ ‘||APELLIDO Empleado, SALARIO Salario, PORCENTAJE_COMISION Porcentaje, nvl(PORCENTAJE_COMISION * SALARIO,0) Comision, SALARIO + nvl(PORCENTAJE_COMISION * SALARIO,0) “Salario total”
from EMPLEADOS;
- Elabore una consulta que liste nombre del trabajo y el salario de los empleados que son manager, cuyo código es 100 o 125 y cuyo salario sea mayor de 6000.
select TRABAJO_TITULO, SALARIO
from EMPLEADOS e, TRABAJOS j
where e.TRABAJO_ID=e.TRABAJO_ID
and GERENTE_ID=100 or GERENTE_ID = 125 and SALARIO > 6000;
- Desarrolle una consulta que liste el código de la localidad, la ciudad y el nombre del departamento de únicamente de los que se encuentran fuera de estados unidos (US).
select l.LOCALIDAD_ID, CIUDAD, NOMBRE_DEPARTAMENTO
from DEPARTAMENTOS d,LOCALIDADES l,PAISES c
where d.LOCALIDAD_ID=l.LOCALIDAD_ID
and l.PAIS_ID=c.PAIS_ID
and c.PAIS_ID !=‘US’;
- Realice una consulta que muestres el código de la región, nombre de la región y el nombre de los países que se encuentran en “Asia”.
select r.REGION_ID, REGION_NOMBRE, PAIS_NOMBRE
from REGIONES r,PAISES c
where r.REGION_ID=c.REGION_ID and REGION_NOMBRE=‘Asia’;
- Elabore una consulta que liste el código de la región y nombre de la región, código de la localidad, la ciudad, código del país y nombre del país, de solamente de las localidades mayores a 2400.
select r.REGION_ID, REGION_NOMBRE, l.LOCALIDAD_ID, c.PAIS_ID, PAIS_NOMBRE
from LOCALIDADES l, REGIONES r,PAISES c
where l.PAIS_ID=c.PAIS_ID
and c.REGION_ID=r.REGION_ID
and l.LOCALIDAD_ID > 2400;
- Desarrolle una consulta donde muestre el código de región con un alias de Región, el nombre de la región con una etiqueta Nombre Región, que muestre una cadena string (concatenación) que diga la siguiente frase “Código País: CA Nombre: Canadá “,CA es el código de país y Canadá es el nombre del país con etiqueta País, el código de localización con etiqueta Localización, la dirección de calle con etiqueta Dirección y el código postal con etiqueta “Código Postal”, esto a su vez no deben aparecer código postal que sean nulos.
select a.REGION_ID “Region”, a.REGION_NOMBRE “Nombre region”, ‘Codigo Pais :’||b.PAIS_ID ||’ Nombre :’ || b.PAIS_NOMBRE “Pais”, c.LOCALIDAD_ID “Localización”, c.DIRECCIONs “Direccion “, c.CODIGO_POSTAL “Código Postal”
...