Consultas varias

2
8/19/2019 Consultas varias http://slidepdf.com/reader/full/consultas-varias 1/2  CONSULTAS SQL BASICAS 1)MOSTRAR EL APELLIDO Y CODIGO DEPARTAMENTO DE LOS EMPLEADOS PERTENECIENTES A L OS DEPARTAMENTOS 20 o 50 ORDENAR POR APELLLIDO  SELECT LAST_NAME,DEPARTMENT_ID  FROM hr.EMPLOYEES  WHERE DEPARTMENT_ID IN(20,50)  ORDER BY LAST_NAME; 2)MOSTRAR EL APELLIDO BAJO EL ALIAS Empleado y sueldo bajo el alias Salario mens ual de los empleados pertenecientes a los departamentos 20 o50 que ganen entre 5 000 y 12000  SELECT LAST_NAME AS"EMPLEADO",SALARY AS"SALARIO MENSUAL"  FROM HR.EMPLOYEES  WHERE DEPARTMENT_ID IN(20,50) AND SALARY BETWEEN 5000 AND 12000;  3) MOSTRAR EL APELLIDO Y FECHA DE CONTRATO DELOS EMPLEADOS CONTRATADOS EL AÑO 1994  o 2004  SELECT LAST_NAME,HIRE_DATE  FROM HR.EMPLOYEES  WHERE TO_CHAR(HIRE_DATE,'YYYY')IN(1994,2004); 4) MOSTRAR EL APELLIDO COD DE OFICIO DE LOS EMPLEADOS SIN JEFE ASIGNADO  SELECT LAST_NAME,JOB_ID  FROM HR.EMPLOYEES  WHERE MANAGER_ID IS NULL; 5) MOSTRAR EL APELLIDO, SUELDO Y % COMISION DE LOS EMPLEADOS QUE COBRAN COMISIO N. ORDENAR POR SALARIO Y COMISION, DE FORMA QUE LOS MAS ALTOS SALGAN PRIMERO  SELECT LAST_NAME,SALARY,COMMISSION_PCT  FROM HR.EMPLOYEES  WHERE COMMISSION_PCT IS NOT NULL  ORDER BY SALARY,COMMISSION_PCT;  6) MOSTRAR EL APELLLIDO DE LOS EMPLEADOS QUE TENGAN UNA a y UNA e EN EL APELLI DO  SELECT LAST_NAME  FROM HR.EMPLOYEES  WHERE LAST_NAME LIKE '%a%'AND LAST_NAME LIKE'%e%'; 7) MOSTRAR LOS APELLIDOS DE LOS EMPLEADOS REEMPLAZANDO LA LETRA a POR UN 1  SELECT REPLACE(UPPER(LAST_NAME),'A',1)  FROM HR.EMPLOYEES;  8) MOSTRAR EL APELLIDO FECHA CONTRATO Y DIAS DE LA SEMANA EN QUE FUERON CONTRAT ADOS LOS EMPLEADOS ORDENANDO POR DIA De LA SEMANA, DE FORMA QUE QUEDEN ORDENANDO S POR LUNES MARTES MIERCOLES JUEVES VIERNES SABADO DOMINGO  SELECT LAST_NAME,HIRE_DATE,TO_CHAR(HIRE_DATE,'DAY') DIA_CONTRATACION  FROM HR.EMPLOYEES

Transcript of Consultas varias

Page 1: Consultas varias

8/19/2019 Consultas varias

http://slidepdf.com/reader/full/consultas-varias 1/2

 CONSULTAS SQL BASICAS

1)MOSTRAR EL APELLIDO Y CODIGO DEPARTAMENTO DE LOS EMPLEADOS PERTENECIENTES A LOS DEPARTAMENTOS 20 o 50 ORDENAR POR APELLLIDO 

SELECT LAST_NAME,DEPARTMENT_ID  FROM hr.EMPLOYEES  WHERE DEPARTMENT_ID IN(20,50)  ORDER BY LAST_NAME;

2)MOSTRAR EL APELLIDO BAJO EL ALIAS Empleado y sueldo bajo el alias Salario mensual de los empleados pertenecientes a los departamentos 20 o50 que ganen entre 5000 y 12000

  SELECT LAST_NAME AS"EMPLEADO",SALARY AS"SALARIO MENSUAL"  FROM HR.EMPLOYEES  WHERE DEPARTMENT_ID IN(20,50) AND SALARY BETWEEN 5000 AND 12000; 3) MOSTRAR EL APELLIDO Y FECHA DE CONTRATO DELOS EMPLEADOS CONTRATADOS EL AÑO 1994 o 2004

  SELECT LAST_NAME,HIRE_DATE  FROM HR.EMPLOYEES

  WHERE TO_CHAR(HIRE_DATE,'YYYY')IN(1994,2004);4) MOSTRAR EL APELLIDO COD DE OFICIO DE LOS EMPLEADOS SIN JEFE ASIGNADO

  SELECT LAST_NAME,JOB_ID  FROM HR.EMPLOYEES  WHERE MANAGER_ID IS NULL;

5) MOSTRAR EL APELLIDO, SUELDO Y % COMISION DE LOS EMPLEADOS QUE COBRAN COMISION. ORDENAR POR SALARIO Y COMISION, DE FORMA QUE LOS MAS ALTOS SALGAN PRIMERO

  SELECT LAST_NAME,SALARY,COMMISSION_PCT  FROM HR.EMPLOYEES

  WHERE COMMISSION_PCT IS NOT NULL  ORDER BY SALARY,COMMISSION_PCT;

 6) MOSTRAR EL APELLLIDO DE LOS EMPLEADOS QUE TENGAN UNA a y UNA e EN EL APELLIDO

  SELECT LAST_NAME  FROM HR.EMPLOYEES  WHERE LAST_NAME LIKE '%a%'AND LAST_NAME LIKE'%e%';

7) MOSTRAR LOS APELLIDOS DE LOS EMPLEADOS REEMPLAZANDO LA LETRA a POR UN 1

  SELECT REPLACE(UPPER(LAST_NAME),'A',1)  FROM HR.EMPLOYEES; 

8) MOSTRAR EL APELLIDO FECHA CONTRATO Y DIAS DE LA SEMANA EN QUE FUERON CONTRATADOS LOS EMPLEADOS ORDENANDO POR DIA De LA SEMANA, DE FORMA QUE QUEDEN ORDENANDOS POR LUNES MARTES MIERCOLES JUEVES VIERNES SABADO DOMINGO

  SELECT LAST_NAME,HIRE_DATE,TO_CHAR(HIRE_DATE,'DAY') DIA_CONTRATACION  FROM HR.EMPLOYEES

Page 2: Consultas varias

8/19/2019 Consultas varias

http://slidepdf.com/reader/full/consultas-varias 2/2

  ORDER BY TO_CHAR(HIRE_DATE,'DAY'); 9) MOSTRAR EL APELLIDO Y COMISION DE LOS EMPLEADOS EN EL CASO DE QUE NO GANE COMISION, MOSTRAR LA FRASE "sin comision" 

SELECT LAST_NAME,COMMISSION_PCT,DECODE(COMMISSION_PCT,NULL,'SIN COMISSIONES')AS"COMISION"  FROM HR.EMPLOYEES;

10) MOSTRAR NOMBRE COMPLETO DE LOS TRABAJADORES OFICIO NOMBRE DEPARTAMENTO Y CIUDAD DE AQUELLOS QUE NOS SON PROGRAMADORES "programmer"

  SELECT CONCAT(FIRST_NAME,LAST_NAME)AS"NOMBRE COMPLETO",JOB_TITLE,DEPARTMENT_ NAME,CITY  FROM HR.EMPLOYEES E,HR.JOBS J,HR.DEPARTMENTS D,HR.LOCATIONS L  WHERE E.DEPARTMENT_ID=D.DEPARTMENT_ID AND D.LOCATION_ID=L.LOCATION_ID AND E.JOB_ID=J.JOB_ID  AND not(JOB_TITLE LIKE('Programmer')); 11) CALCULAR EL NUMERO DE EMPLEADOS CONTRATADOS POR AÑO Y MES ORDENAR POR AÑO

  SELECT TO_CHAR(HIRE_DATE,'YYYY')AS"AÑO",TO_CHAR(HIRE_DATE,'MONTH')AS"MES",COUNT(EMPLOYEE_ID)AS"TOTAL EMPLEADOS"

  FROM HR.EMPLOYEES  GROUP BY TO_CHAR(HIRE_DATE,'YYYY'),TO_CHAR(HIRE_DATE,'MONTH')  ORDER BY TO_CHAR(HIRE_DATE,'YYYY'),TO_CHAR(HIRE_DATE,'MONTH');

12) MOSTRAR EL NOMBRE DEL EMPLEADO MAS SU DEPARTAMENTO

  SELECT FIRST_NAME,DEPARTMENT_NAME  from HR.EMPLOYEES E,HR.DEPARTMENTS D  WHERE E.DEPARTMENT_ID=D.DEPARTMENT_ID;

13) QUE CODIGO DE OFICIO TIENE UN SOLO EMPLEADO

  SELECT JOB_ID CODIGO,COUNT(EMPLOYEES.EMPLOYEE_ID) CANTIDAD

  FROM HR.EMPLOYEES  GROUP BY JOB_ID  HAVING COUNT(JOB_ID)=1;

14) MOSTRAR EL NOMBRE Y APELLIDO DE EMPLEADO EL NOMBRE DE SU DEPARTAMENTO Y SU LOCALIZACION DEL DEPARTAMENTO REALIZARLO A BASE DE JOINS

  SELECT FIRST_NAME,LAST_NAME,DEPARTMENT_NAME,CITY  FROM HR.EMPLOYEES E,HR.DEPARTMENTS D,HR.LOCATIONS L  WHERE E.DEPARTMENT_ID=D.DEPARTMENT_ID AND  D.LOCATION_ID=L.LOCATION_ID;

SELECT FIRST_NAME,LAST_NAME,DEPARTMENT_NAME,CITY  FROM HR.EMPLOYEES E  JOIN HR.DEPARTMENTS D ON  E.DEPARTMENT_ID=D.DEPARTMENT_ID JOIN HR.LOCATIONS L ON  D.LOCATION_ID=L.LOCATION_ID;