Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tabla de imágenes
Ilustración 1. Consulta SQL problema 1 ............................................................................................. 2
Ilustración 2. Resultado problema 1 .................................................................................................... 2
Ilustración 3. Consulta SQL de problema 2 ........................................................................................ 2
Ilustración 4. Resultado de problema 2 ............................................................................................... 3
Ilustración 5. Consulta SQL problema 3 ............................................................................................. 3
Ilustración 6. Resultado de problema 3 ............................................................................................... 3
Ilustración 7. Consulta SQL de problema 4 ........................................................................................ 3
Ilustración 8. Resultado de problema 4 ............................................................................................... 4
Ilustración 9. Consulta SQL de problema 5 ........................................................................................ 4
Ilustración 10. Resultado de problema 5 ............................................................................................. 4
Ilustración 11. Consulta SQL de problema 6 ...................................................................................... 5
Ilustración 12. Resultado de problema 6 ............................................................................................. 5
Ilustración 13. Consulta SQL de problema 7 ...................................................................................... 5
Ilustración 14. Resultado de problema 7 ............................................................................................. 5
Ilustración 15. Consulta SQL de problema 8 ...................................................................................... 6
Ilustración 16. Resultado de problema 8 ............................................................................................. 6
Ilustración 17. Consulta SQL de problema 9 ...................................................................................... 6
Ilustración 18. Resultado de problema 9 ............................................................................................. 6
Ilustración 19. Consulta SQL de problema 10 .................................................................................... 7
Ilustración 20. Resultado de problema 10 ........................................................................................... 7
Introducción
El presente trabajo se aprenderá como utilizar SQL para almacenar, consultar y
manipular datos de una forma avanzada a los trabajos anteriores, SQL es un lenguaje de
programación de propósito especial diseñado para manejar datos en una base de datos
relacional, y es utilizado por un gran número de aplicaciones y organizaciones.
1
Problema uno
En este problema se obtendrá la nómina que es la suma de los salary de los empleados
del departamento, el cual se le paga a cada uno de los departamentos (department_id y
nomina).
Como puede observarse en la imagen se sumó la nómina por cada grupo que existe
de department_id también se ordenó con el department_id los datos.
Problema dos
En este problema se obtendrá el salario menor y mayor que se está pagando por puesto
(job_id, salario menor y salario mayor).
Como puede verse se tienen dos nuevas clausulas donde “MAX” sirve para buscar el
dato mayor y el “MIN” sirve para buscar el dato menor dentro de la columna, en este caso se
agruparán las filas en base a la cláusula de “GROUP BY” con el job_id.
2
Se tiene como resultado la siguiente consulta, donde puede observarse los datos
agrupados con los valores de máximo y mínimo.
Problema tres
Se obtendrán los departamentos que tienen asignados más de 30 empleados
(department_id, no. empleados).
Problema cuatro
En este problema se obtendrá el salario promedio que se paga por puesto (job_id,
salario promedio).
Se puede observar que se utilizó una nueva cláusula que seria “AVG” el cual hace el
promedio de los datos de la columna que se seleccionó, mientras el “GROUP BY” agrupo
las filas mediante el job_id.
3
Como resultado de la consulta, se pueden ver los datos agrupados con el job_id y el
promedio que tienen de salario los empleados.
Problema cinco
Como problema cinco se tendrá que obtener los departamentos con más de un
movimiento de puesto de su personal (department_id, no. movimientos).
Como puede observarse se utilizó la tabla de datos de job_history donde nos sirve
para poder ver los movimientos de los empleados en su puesto personal y la cláusula
“HAVING COUNT” donde cuenta los movimientos a partir de 1.
Problema seis
En este problema se obtendrá la nómina que se paga por puesto, no se incluirá el
puesto SA_REP, solo aquellos puestos que tienen una nómina mayor a $50000 (job_id,
nómina).
Como puede mirarse las cláusulas “SUM” donde se suma la nómina y “AS” para
cambiar el nombre por lo cual se siguen utilizando, se agrupan las filas a través de “GROUP
BY” con el job_id y se tiene una nueva clausula “HAVING SUM” que tiene como función
incluir la condición de “SUM”.
4
Ilustración 11. Consulta SQL de problema 6
Como puede observarse a continuación, se puede ver el resultado de las columnas que
se seleccionaron y los datos que se pidieron en concreto.
Problema siete
Se obtendrá el número de empleados por departamento, para los empleados que tienen
un salario en el rango de 2000 a 10000 (department_id, no. empleados).
Como puede observarse las filas se agruparán y ordenarán con las cláusulas “GROUP
BY” y “ORDER BY”, el rango del salario se sacó con la cláusula “BETWEEN” y se contó
por cada employee_id con la cláusula de “COUNT”.
Problema ocho
En este problema se obtendrá el número de empleados que tienen comisión, por
puesto (job_id, no. empleados).
Se utilizo la cláusula de “COUNT” para contar las filas por employee_id se le cambio
el nombre a empleados con “AS”, y se agruparon las filas con el “GROUP BY” con el job_id,
con la cláusula “IS NOT NULL” se utilizó para que no cuente los datos que no tienen
5
comisión.
Como puede observarse a continuación, se puede ver el resultado de las columnas que
se seleccionaron y los datos que se pidieron en concreto de los empleados.
Problema nueve
En este problema se obtendrá el no. mayor de empleados a cargo de un administrador.
Se utilizará el “MAX COUNT” para obtener el dato mayor de una columna, el “IS
NOT NULL” para que no cuente los datos que no tienen administrador y las filas se agruparan
con la cláusula de “GROUP BY” con el manager_id.
Problema diez
Se obtendrá la primera y última fecha de ingreso o contratación para cada
departamento.
Como puede observarse se utilizó la tabla de datos de job_history donde nos sirve
para poder ver las fechas de ingreso o contratación de los empleados por departamento,
mediante las cláusulas “MAX” y “MIN” se obtendrán estas fechas las cuales se cambiarán
de nombre con la cláusula de “AS” con los nombres de primera y última, como puede
6
observarse las filas se agruparán y ordenarán con las cláusulas “GROUP BY” y “ORDER
BY” mediante el department_id.
Como puede observarse a continuación, se puede ver el resultado de las columnas que
se seleccionaron y las fechas que se pidieron en concreto de los empleados.
7
Conclusión
Se obtiene primeramente como conclusión que, en la mayoría de los casos usamos las
mismas clausulas ya sea GROUP BY o ORDER BY ya sea porque los problemas estaban
enlazados o porque se requerían utilizar las mismas clausulas. El SQL nos permitió ingresar
los comandos o sentencias de tal manera que se pudo administrar o crear la base de
datos, esta variedad de cláusulas nos permitió generar la información de datos desde la
creación o modificación a las tablas las cuales también nos permitieron recuperar los datos o
importarlas de varias maneras.