0% encontró este documento útil (0 votos)
55 vistas14 páginas

Totalizar Datos

El documento explica cómo calcular estadísticas agregadas como el promedio de salarios de los empleados utilizando funciones como SUM, COUNT, y AVG en SQL. Muestra cómo obtener la suma y el recuento total de los salarios y empleados de la tabla respectivamente, y luego dividir la suma entre el recuento para calcular el promedio. También cubre el uso de la cláusula GROUP BY para agrupar los resultados por sexo y obtener estadísticas separadas para cada grupo.

Cargado por

Janeth Huarachi
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
55 vistas14 páginas

Totalizar Datos

El documento explica cómo calcular estadísticas agregadas como el promedio de salarios de los empleados utilizando funciones como SUM, COUNT, y AVG en SQL. Muestra cómo obtener la suma y el recuento total de los salarios y empleados de la tabla respectivamente, y luego dividir la suma entre el recuento para calcular el promedio. También cubre el uso de la cláusula GROUP BY para agrupar los resultados por sexo y obtener estadísticas separadas para cada grupo.

Cargado por

Janeth Huarachi
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 14

Totalizar datos

¿Cuál es el salario medio de los


empleados?

•¿Qué datos nos piden?


•¿Dónde están los datos?
•¿Qué requisitos deben cumplir los registros?
Obtengamos primero la suma de los
salarios
¿Qué datos nos piden?
La suma de los salarios.

¿Dónde están los datos?


En la tabla empleados.

¿Qué requisitos deben cumplir los registros?


Ninguno, queremos sumar todos los salarios por lo tanto no hemos de filtrar registros, los
seleccionaremos todos, o lo que es lo mismo, omitiremos la cláusula WHERE de la consulta
SQL.
select sum(SALARIO)
  from EMPLEADOS
Ahora contamos el número de
empleados
Es decir el número de registros de la tabla empleados:

select count(*)
  from EMPLEADOS

El asterisco que encontramos en "COUNT(*)" equivale a decir: cualquier campo, fíjese que en
este caso queremos contar registros, por lo tanto lo mismo nos da contar nombres, que apellidos,
que cualquier otro campo.
Generar el salario medio de los
empleados
select sum(SALARIO) , count(*)
  from EMPLEADOS

Entonces:
select sum(SALARIO) / count(*)
  from EMPLEADOS

select sum(SALARIO) / count(*) as MEDIA_SALARIOS
  from EMPLEADOS
Otra opción para generar el promedio

select avg(SALARIO) as MEDIA_SALARIOS
  from EMPLEADOS
RESUMEN
Las funciones de totalización SUM (suma), COUNT (contar), AVG (promedio), MAX (máximo)
y MIN (mínimo), devuelven en una sola fila el cálculo sobre un campo aplicado a un grupo de
registros. Los registros que intervienen para el cálculo dependen de los filtros establecidos en la
clausula WHERE, interviniendo todos los registros de la tabla si la omitimos.
Ejercicios
Ejercicio 1
En todos los ejemplos de esta lección se ha omitido la clausula WHERE, construya una consulta,
donde necesitará establecer una condición en la clausula WHERE, que devuelva el salario medio
de los empleados que son hombres. Renombre la cabecera del resultado con un titulo que deje
claro que dato se está mostrando.

Ejercicio 2
Construya una consulta que devuelva en la misma fila el salario máximo y mínimo de entre todos
los empleados. Renombre las cabeceras de resultados con un titulo que deje claro que datos se
están mostrando.
Solución
1. SELECT AVG(SALARIO) 
  FROM EMPLEADOS
  WHERE SEXO=“H”
2. SELECT MAX(SALARIO) AS SALARIO MAXIMO, MIN(SALARIO) AS SALARIO
MÍNIMO
  FROM EMPLEADOS
 
CLAÚSULA GROUP BY
Supongamos por ejemplo una clase de alumnos, usted puede preguntarse: ¿cuantos alumnos
hay?, y la respuesta es un solo dato que hace referencia a un solo grupo que podemos llamar:
alumnos. Ahora dividamos la clase en dos grupos de manera que uno lo formen las chicas y otro
los chicos. Una vez formados los dos grupos puede preguntarse: ¿cuantos alumnos hay en cada
uno?, y la respuesta son dos datos, uno para cada grupo. El resultado es en realidad una
totalización por grupos. Primero usted establece los grupos por sexo y luego totaliza la cantidad
de miembros de cada uno. Pues bien, el SQL permite agrupar totales mediante la cláusula:
GROUP BY.
Total de empleados por sexo
•Construyamos una consulta que nos devuelva el total de empleados por sexo. Esto se consigue con una nueva cláusula: GROUP
BY, en consecuencia debemos añadir una cuarta pregunta a las preguntas de construcción:

¿Qué datos nos piden?


El número de empleados.

•¿Dónde están los datos?


En la tabla empleados

•¿Qué requisitos deben cumplir los registros?


Ninguno, necesitamos que intervengan todos los registros.

•¿Cómo debemos agrupar los datos?


Por sexo.
Total de empleados por sexo
SELECT SEXO , count(*) as EMPLEADOS
FROM EMPLEADOS
GROUP BY SEXO

Observe que el resultado de la consulta devuelve dos filas, una para los hombres y otra para las
mujeres, cada fila indica el número de empleados de su grupo. Advierta como los grupos
resultantes son dos porque los distintos valores del campo SEXO en los registros seleccionados
son dos: "H" y "M".
Consideraciones GROUP BY
En general, cuando acompañamos uno o más campos de tabla con funciones de totalización,
estos campos deberán formar parte de la cláusula GROUP BY. Un campo por el que agrupamos
puede omitirse en la cláusula SELECT, aunque entonces, como puede apreciarse en el próximo
ejemplo, ignoramos a que grupo representa cada fila de resultado.

SELECT count(*) as EMPLEADOS
 FROM EMPLEADOS
GROUP BY SEXO
DISTINCT
Con ella podemos eliminar filas redundantes de un resultado SQL, por lo que permite obtener los
distintos valores de un campo existentes en una tabla o grupo de registros seleccionados.
Ejemplo:
SELECT DISTINCT SEXO
  FROM EMPLEADOS

También podría gustarte