Advertisement
aburriyo

Untitled

Oct 26th, 2021
1,603
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- [1]
  2. -- Desarrolle una sentencia SQL que permita ver los atributos Employee_ID, FIRST_NAME y LAST_NAME.
  3. -- 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)
  4.  
  5. -- Se debe ver solamente los registros donde LAST_NAME comience con K, A o M.
  6.  
  7.  
  8. SELECT EMPLOYEE_ID, UPPER(FIRST_NAME), CONCAT(UPPER(SUBSTR(LAST_NAME,0,2)), SUBSTR(LAST_NAME,3))
  9. FROM HR.EMPLOYEES
  10. WHERE SUBSTR(last_name, 1, 1) IN ('K', 'A', 'M')
  11. --LISTO
  12. -- [2]
  13. -- Desarrolle una consulta que muestre atributos Employee_ID, First_Name, Job_ID, Job_Title y Department_Name. Debe unir tablas utilizando sentencia JOIN.
  14. -- 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
  15.  
  16.  
  17. SELECT EMPLYEE_ID, FIRST_NAME, JOB_ID, JOB_TITTLE, DEPARTMENT_NAME
  18. FROM HR.EMPLOYEES
  19.  
  20. -- FALTA JOIN
  21.  
  22. -- [3]
  23. -- Desarrolle una consulta SQL que permita ver los atributos Employee_ID, First_Name, y Salary.
  24. -- 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.
  25.  
  26. SELECT EMPLOYEE_ID, FIRST_NAME, SALARY, ROUND(SALARY * 0.35 + SALARY,0) AS INCREMENTO
  27. FROM HR.EMPLOYEES
  28.  
  29. -- --carlos
  30. -- SELECT employee_id,
  31. --       first_name,
  32. --       salary,
  33. --       ROUND((salary * 1.35), 1) INCREMENTO
  34. -- FROM hr.employees
  35.  
  36.  
  37. -- [4]
  38. -- Desarrollar una consulta SQL que muestre las columnas First_Name, Last_Name, Salary
  39. -- y una cuarta columna que  muestre cual es el salario total de él empleado incluyendo la comisión
  40. -- (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.
  41. -- Asegúrese de truncar la última columna, para que no se vean decimales.
  42.  
  43. SELECT FIRST_NAME, LAST_NAME, SALARY, COMMISSION_PCT,
  44. FROM HR.EMPLOYEES
  45.  
  46. --INCOMPLETO
  47.  
  48. --[5]
  49. -- Desarrollar una consulta SQL que muestre las columnas Employee_ID, First_Name, Job_ID, Start_Date y End_Date.
  50. -- 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.
  51.  
  52. SELECT EMPLOYEE_ID, FIRST_NAME, JOB_ID, START_DATE, END_DATE
  53. FROM HR.JOB_HISTORY
  54.  
  55.  
  56.  
  57. SELECT EMPLOYEE_ID, START_DATE, END_DATE, TRUNC((END_DATE - START_DATE)/7) AS SEMANAS
  58. FROM HR.JOB_HISTORY
  59.  
  60. -- :D
  61. --INCOMPLETO, FALTA JOIN CON HR.EMPLOYEES
  62.  
  63. -- [6]
  64. --Desarrollar una consulta sql que presente los datos Employee_ID, First_Name, Department_name, City,
  65. -- y una quinta columna que muestre cantidad de meses que la persona se encuentra en la empresa.
  66. -- Se desean ver solo los empleados que pertenecen a la ciudad de Oxford o a la ciudad de Seattle.
  67.  
  68. SELECT EMPLOYEE_ID, FIRST_NAME, TRUNC(MONTHS_BETWEEN(SYSDATE, HIRE_DATE))
  69. FROM HR.EMPLOYEES
  70.  
  71.  
  72. WHERE CITY = 'SEATTLE'
  73.  
  74. --FALTA JOIN Y WHERE
  75.  
  76. -- [7]
  77. -- 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:
  78.  
  79. --       TUE   25 de October de 2021
  80.  
  81. -- Considerar que se debe respetar formato que considera:
  82. -- -    Primeros 3 caracteres de él día
  83. -- -    Día del mes
  84. -- -    Palabra de
  85. -- -    Nombre del mes sin abreviar
  86. -- -    Palabra de
  87. -- -    Año con 4 dígitos.
  88.  
  89. SELECT  HIRE_DATE, TO_CHAR(HIRE_DATE, 'DY-DD-"de"-MONTH-"de"-YYYY')
  90.     FROM HR.EMPLOYEES
  91. --FALTA JOIN
  92. --[8]
  93. -- Desarrolle una consulta que presente los datos Employee_id, Last_name y Salary. Columna Salary debe verse con formato de Moneda ($24,000.0).
  94. -- Se deben ver solamente registros de los empleados que pertenezcan a el departamento Sales
  95.  
  96. SELECT EMPLOYEE_ID, LAST_NAME, TO_CHAR(SALARY,'$99,999.9')
  97. FROM HR.EMPLOYEES
  98.  
  99. SELECT * FROM HR.EMPLOYEES
  100. --LISTO
  101.  
  102. --[9]
  103. -- 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.
  104.  
  105. SELECT EMPLOYEE_ID, LAST_NAME, SALARY, NVL(COMMISSION_PCT,0)
  106. FROM HR.EMPLOYEES
  107.  --INCOMPLETA
  108. --[10]
  109. -- Desarrolle una consulta que presente los datos Employee_id, Last_name, Salary y Department_Name.
  110. -- 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.
  111.  
  112. SELECT EMPLOYEE_ID, LAST_NAME, SALARY, DEPARTMENT_NAME, Commission_PCT
  113. FROM HR.EMPLOYEES
  114. -INCOMPLETA
  115. --[11]
  116. -- 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:
  117. -- •Si los primeros 2 caracteres de JOB_ID son AD, debe indicar Cuenta de Administración
  118. -- •Si los primeros 2 caracteres de JOB_ID son FI, debe indicar Cuenta de Finanzas
  119. -- •Si los primeros 2 caracteres de JOB_ID son IT, debe indicar Cuenta de Sistemas
  120. -- •Si los primeros 2 caracteres de JOB_ID son MK, debe indicar Cuenta de Marketing
  121. -- •Si no es ninguno de los anteriores, debe indicar Cuentas de personal Externo
  122. -- Debe utilizar sentencia CASE
  123.  
  124. SELECT EMPLOYEE_ID, LAST_NAME, SALARY, JOB_ID,
  125. CASE SUBSTR(JOB_ID,1,2)
  126.         WHEN 'AD' THEN 'CUENTA DE ADMINISTRACIÓN'
  127.         WHEN 'FI' THEN 'CUENTA DE FINANZAS'
  128.         WHEN 'IT' THEN 'CUENTA DE SISTEMAS'
  129.         WHEN 'MK' THEN 'CUENTA DE MARKETING'
  130.     ELSE 'CUENTA DE PERSONAL EXTERNO'
  131. END TIPO
  132. FROM HR.EMPLOYEES;
  133.  
  134.  
  135.  
  136. -- ************************************************************************************* --
  137. -- SELECT LAST_NAME, SALARY, JOB_ID
  138. -- CASE SUBSTR(JOB_ID,1,2)
  139. --     WHEN 'IT' THEN '123'
  140. --     WHEN 'SA' THEN '321'
  141. --     ELSE  'OTRO'
  142. -- END Tipo
  143. -- FROM HR.EMPLOYEES;
  144. ¨
  145. --[12]
  146. -- Desarrolle una consulta que presente los datos Employee_id, Last_name, Salary y Department_Name. Debe incluir una quinta columna que realice lo siguiente:
  147. -- •Si el Departamento de él empleado es de Marketing, debe mostrar salario con un incremento de un 10%.
  148. -- •Si el Departamento de él empleado es de Shipping, debe mostrar salario con un incremento de un 15%.
  149. -- •Si el Departamento de él empleado es de Human Resources, debe mostrar salario con un incremento de un 20%.
  150. -- •Para los demás departamentos, debe mostrar salario con un incremento de un 8%.
  151.  
  152. -- SELECT EMPLOYEE_ID, LAST_NAME, SALARY, DEPARTMENT_NAME
  153. -- FROM HR.EMPLOYEES
  154.  
  155. -- SELECT DEPARTMENT_NAME,
  156. -- DECODE(DEPARTMENT_NAME), 'Marketing', 'INCREMENTO 10%',
  157. --                         'Shipping', 'INCREMENTO 15%',
  158. --                         'Human Resources', 'INCREMENTO 20%',
  159. --         'OTRO'
  160.        
  161. -- FROM HR.DEPARTMENTS
  162.  
  163. -- -- *******************************************************************
  164. -- SELECT last_name,
  165. --       salary,
  166. --       job_id,
  167. --       DECODE(substr(job_id, 1, 2), 'IT', 'Departamento de Tecnología',
  168. --                                     'SA', 'Departamento de Administración',
  169. --                                     'Otro departamento')
  170. -- FROM hr.employees
  171.  
  172. -- ***********************************************************************
  173. --ESTA FUNCIONA
  174. SELECT employee_id, last_name, salary, department_name,
  175.        DECODE(department_name, 'Marketing', (SALARY * 1.10),
  176.                                'Shipping', (SALARY * 1.15),
  177.                                'Human Resources', (SALARY * 1.20),
  178.                                (SALARY * 1.10)) SALARIO AUMENTADO
  179. FROM hr.employees E JOIN Hr.departments D
  180.     ON (E.department_id = D.department_id)
  181.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement