Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- [1]
- -- Desarrolle una sentencia SQL que permita ver los atributos Employee_ID, FIRST_NAME y LAST_NAME.
- -- Considerar que todos los caracteres de FIRST_NAME deben verse en mayúscula, y los 2 primeros caracteres de LAST_NAME deben verse en Mayúscula (los demás caracteres deben verse en minúscula)
- -- Se debe ver solamente los registros donde LAST_NAME comience con K, A o M.
- SELECT EMPLOYEE_ID, UPPER(FIRST_NAME), CONCAT(UPPER(SUBSTR(LAST_NAME,0,2)), SUBSTR(LAST_NAME,3))
- FROM HR.EMPLOYEES
- WHERE SUBSTR(last_name, 1, 1) IN ('K', 'A', 'M')
- --LISTO
- -- [2]
- -- Desarrolle una consulta que muestre atributos Employee_ID, First_Name, Job_ID, Job_Title y Department_Name. Debe unir tablas utilizando sentencia JOIN.
- -- La consulta debe incluir una sexta columna que muestre concatenados los datos Job_ID, Job_Title y Department_name. Esta última columna debe presentar todos los datos en minúscula
- SELECT EMPLYEE_ID, FIRST_NAME, JOB_ID, JOB_TITTLE, DEPARTMENT_NAME
- FROM HR.EMPLOYEES
- -- FALTA JOIN
- -- [3]
- -- Desarrolle una consulta SQL que permita ver los atributos Employee_ID, First_Name, y Salary.
- -- Debe incluir una cuarta columna que se llame Incremento, que muestre el Salario con un 35% de aumento. Esta última columna se debe redondear a 1 decimal.
- SELECT EMPLOYEE_ID, FIRST_NAME, SALARY, ROUND(SALARY * 0.35 + SALARY,0) AS INCREMENTO
- FROM HR.EMPLOYEES
- -- --carlos
- -- SELECT employee_id,
- -- first_name,
- -- salary,
- -- ROUND((salary * 1.35), 1) INCREMENTO
- -- FROM hr.employees
- -- [4]
- -- Desarrollar una consulta SQL que muestre las columnas First_Name, Last_Name, Salary
- -- y una cuarta columna que muestre cual es el salario total de él empleado incluyendo la comisión
- -- (Commission_PCT tiene valor de comisión). Por ejemplo si el salario es 10000, y la comisión es .25, el salario total es de 12500.
- -- Asegúrese de truncar la última columna, para que no se vean decimales.
- SELECT FIRST_NAME, LAST_NAME, SALARY, COMMISSION_PCT,
- FROM HR.EMPLOYEES
- --INCOMPLETO
- --[5]
- -- Desarrollar una consulta SQL que muestre las columnas Employee_ID, First_Name, Job_ID, Start_Date y End_Date.
- -- Debe incluir una sexta columna que indique cuantas semanas de diferencia hay entre Start_Date y End_Date. Asegúrese que no se vean decimales en última columna.
- SELECT EMPLOYEE_ID, FIRST_NAME, JOB_ID, START_DATE, END_DATE
- FROM HR.JOB_HISTORY
- SELECT EMPLOYEE_ID, START_DATE, END_DATE, TRUNC((END_DATE - START_DATE)/7) AS SEMANAS
- FROM HR.JOB_HISTORY
- -- :D
- --INCOMPLETO, FALTA JOIN CON HR.EMPLOYEES
- -- [6]
- --Desarrollar una consulta sql que presente los datos Employee_ID, First_Name, Department_name, City,
- -- y una quinta columna que muestre cantidad de meses que la persona se encuentra en la empresa.
- -- Se desean ver solo los empleados que pertenecen a la ciudad de Oxford o a la ciudad de Seattle.
- SELECT EMPLOYEE_ID, FIRST_NAME, TRUNC(MONTHS_BETWEEN(SYSDATE, HIRE_DATE))
- FROM HR.EMPLOYEES
- WHERE CITY = 'SEATTLE'
- --FALTA JOIN Y WHERE
- -- [7]
- -- Desarrollar una consulta que muestre los datos Employee_ID, Last_name, Department_ID, Department_Name, Hire_Date, y una sexta columna que muestre la fecha de ingreso a la empresa (Hire_date), la que debe verse de la siguiente forma:
- -- TUE 25 de October de 2021
- -- Considerar que se debe respetar formato que considera:
- -- - Primeros 3 caracteres de él día
- -- - Día del mes
- -- - Palabra de
- -- - Nombre del mes sin abreviar
- -- - Palabra de
- -- - Año con 4 dígitos.
- SELECT HIRE_DATE, TO_CHAR(HIRE_DATE, 'DY-DD-"de"-MONTH-"de"-YYYY')
- FROM HR.EMPLOYEES
- --FALTA JOIN
- --[8]
- -- Desarrolle una consulta que presente los datos Employee_id, Last_name y Salary. Columna Salary debe verse con formato de Moneda ($24,000.0).
- -- Se deben ver solamente registros de los empleados que pertenezcan a el departamento Sales
- SELECT EMPLOYEE_ID, LAST_NAME, TO_CHAR(SALARY,'$99,999.9')
- FROM HR.EMPLOYEES
- SELECT * FROM HR.EMPLOYEES
- --LISTO
- --[9]
- -- Desarrolle una consulta que presente los datos Employee_id, Last_name y Salary. Debe incluir una cuarta columna que muestre cual es la comisión que el empleado tiene, si Commission_PCT es Null ,debe devolver valor 0.
- SELECT EMPLOYEE_ID, LAST_NAME, SALARY, NVL(COMMISSION_PCT,0)
- FROM HR.EMPLOYEES
- --INCOMPLETA
- --[10]
- -- Desarrolle una consulta que presente los datos Employee_id, Last_name, Salary y Department_Name.
- -- Debe incluir una quinta columna que muestre mensaje No tiene comisión si Commission_PCT es Null, o que muestre mensaje Si tiene comisión si Commission_PCT no es Null.
- SELECT EMPLOYEE_ID, LAST_NAME, SALARY, DEPARTMENT_NAME, Commission_PCT
- FROM HR.EMPLOYEES
- -INCOMPLETA
- --[11]
- -- Desarrolle una consulta que presente los datos Employee_id, Last_name, Salary, JOB_ID y {Job_Title}. Debe incluir una sexta columna que muestre siguientes mensajes:
- -- •Si los primeros 2 caracteres de JOB_ID son AD, debe indicar Cuenta de Administración
- -- •Si los primeros 2 caracteres de JOB_ID son FI, debe indicar Cuenta de Finanzas
- -- •Si los primeros 2 caracteres de JOB_ID son IT, debe indicar Cuenta de Sistemas
- -- •Si los primeros 2 caracteres de JOB_ID son MK, debe indicar Cuenta de Marketing
- -- •Si no es ninguno de los anteriores, debe indicar Cuentas de personal Externo
- -- Debe utilizar sentencia CASE
- SELECT EMPLOYEE_ID, LAST_NAME, SALARY, JOB_ID,
- CASE SUBSTR(JOB_ID,1,2)
- WHEN 'AD' THEN 'CUENTA DE ADMINISTRACIÓN'
- WHEN 'FI' THEN 'CUENTA DE FINANZAS'
- WHEN 'IT' THEN 'CUENTA DE SISTEMAS'
- WHEN 'MK' THEN 'CUENTA DE MARKETING'
- ELSE 'CUENTA DE PERSONAL EXTERNO'
- END TIPO
- FROM HR.EMPLOYEES;
- -- ************************************************************************************* --
- -- SELECT LAST_NAME, SALARY, JOB_ID
- -- CASE SUBSTR(JOB_ID,1,2)
- -- WHEN 'IT' THEN '123'
- -- WHEN 'SA' THEN '321'
- -- ELSE 'OTRO'
- -- END Tipo
- -- FROM HR.EMPLOYEES;
- ¨
- --[12]
- -- Desarrolle una consulta que presente los datos Employee_id, Last_name, Salary y Department_Name. Debe incluir una quinta columna que realice lo siguiente:
- -- •Si el Departamento de él empleado es de Marketing, debe mostrar salario con un incremento de un 10%.
- -- •Si el Departamento de él empleado es de Shipping, debe mostrar salario con un incremento de un 15%.
- -- •Si el Departamento de él empleado es de Human Resources, debe mostrar salario con un incremento de un 20%.
- -- •Para los demás departamentos, debe mostrar salario con un incremento de un 8%.
- -- SELECT EMPLOYEE_ID, LAST_NAME, SALARY, DEPARTMENT_NAME
- -- FROM HR.EMPLOYEES
- -- SELECT DEPARTMENT_NAME,
- -- DECODE(DEPARTMENT_NAME), 'Marketing', 'INCREMENTO 10%',
- -- 'Shipping', 'INCREMENTO 15%',
- -- 'Human Resources', 'INCREMENTO 20%',
- -- 'OTRO'
- -- FROM HR.DEPARTMENTS
- -- -- *******************************************************************
- -- SELECT last_name,
- -- salary,
- -- job_id,
- -- DECODE(substr(job_id, 1, 2), 'IT', 'Departamento de Tecnología',
- -- 'SA', 'Departamento de Administración',
- -- 'Otro departamento')
- -- FROM hr.employees
- -- ***********************************************************************
- --ESTA FUNCIONA
- SELECT employee_id, last_name, salary, department_name,
- DECODE(department_name, 'Marketing', (SALARY * 1.10),
- 'Shipping', (SALARY * 1.15),
- 'Human Resources', (SALARY * 1.20),
- (SALARY * 1.10)) SALARIO AUMENTADO
- FROM hr.employees E JOIN Hr.departments D
- ON (E.department_id = D.department_id)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement