Está en la página 1de 2

--NULOS

--NVL(campo_nulo,dato)

SELECT
employee_id AS "Id del empleado",
--UPPER(first_name) || ' ' || UPPER(last_name) AS "Nombre Completo",
UPPER(first_name || ' ' || last_name) AS "Nombre Completo",
salary AS sueldo,
(salary+2000) * 1.05 AS "Sueldo reajustado",
commission_pct AS Comision,
department_id AS "Departamento",
NVL(commission_pct,0),
NVL(TO_CHAR(commission_pct),'Sin Comision')

FROM employees
ORDER BY 1;

--CONDICIONALES
-- HASTA 6000 bajo
-- HASTA 10000 medio
-- SOBRE 10000 alto

SELECT
employee_id AS "Id del empleado",
--UPPER(first_name) || ' ' || UPPER(last_name) AS "Nombre Completo",
UPPER(first_name || ' ' || last_name) AS "Nombre Completo",
salary AS sueldo,
(salary+2000) * 1.05 AS "Sueldo reajustado",
TO_CHAR(salary * 900,'$9G999G999G999') AS "Sueldo en pesos",
TO_CHAR(salary * 900,'$0G000G000G000') AS "Sueldo en pesos",
CASE
WHEN salary <= 6000 THEN 'Sueldo bajo'
WHEN salary BETWEEN 6001 AND 10000 THEN 'Sueldo medio'
WHEN salary > 10000 THEN 'Sueldo alto'
END AS "Rango Sueldo",
CASE
WHEN salary <= 6000 THEN 'Sueldo bajo'
WHEN salary BETWEEN 6001 AND 10000 THEN 'Sueldo medio'
ELSE 'Sueldo alto'
END AS "Rango Sueldo"

FROM employees
ORDER BY 1;

--FUNCIONES FECHAS
--EXTRACT(DAY FROM campo)
--ADD_MONTHS(fecha,meses)
SELECT
employee_id AS "Id del empleado",
--UPPER(first_name) || ' ' || UPPER(last_name) AS "Nombre Completo",
UPPER(first_name || ' ' || last_name) AS "Nombre Completo",
salary AS sueldo,
(salary+2000) * 1.05 AS "Sueldo reajustado",
commission_pct AS Comision,
department_id AS "Departamento",
hire_date AS "Inicio Contrato",
EXTRACT(MONTH FROM hire_date) AS "Mes contrato",
EXTRACT(DAY FROM hire_date) AS "Dia contrato",
EXTRACT(YEAR FROM hire_date) AS "Anio contrato",
SYSDATE,
hire_date+60,
ADD_MONTHS(hire_date,-2),
NVL(commission_pct,0)

FROM employees
WHERE EXTRACT(YEAR FROM hire_date) = (EXTRACT(YEAR FROM SYSDATE) - 20)
ORDER BY "Inicio Contrato";

SELECT
employee_id AS "Id del empleado",
--UPPER(first_name) || ' ' || UPPER(last_name) AS "Nombre Completo",
UPPER(first_name || ' ' || last_name) AS "Nombre Completo",
salary AS sueldo,
(salary+2000) * 1.05 AS "Sueldo reajustado",
commission_pct AS Comision,
department_id AS "Departamento",
hire_date AS "Inicio Contrato",
EXTRACT(MONTH FROM hire_date) AS "Mes contrato",
EXTRACT(DAY FROM hire_date) AS "Dia contrato",
EXTRACT(YEAR FROM hire_date) AS "Anio contrato",
SYSDATE,
sysdate - hire_date AS "Dias de Servicio DECIMALES",
ROUND(sysdate - hire_date,0) AS "Dias de Servicio ROUND",
TRUNC(sysdate - hire_date,0) AS "Dias de Servicio TRUNC"
FROM employees
WHERE EXTRACT(YEAR FROM hire_date) = (EXTRACT(YEAR FROM SYSDATE) - 20)
ORDER BY "Inicio Contrato";

También podría gustarte