Published on

June 13, 2022

Comprendiendo la función AVG() de SQL Server y sus casos de uso

En SQL Server, hay momentos en los que necesitamos encontrar el valor promedio de datos numéricos almacenados en una columna para abordar requisitos comerciales específicos. Para lograr esto, SQL Server proporciona una función de agregado llamada AVG(). La función AVG() calcula el valor promedio de la expresión especificada en una instrucción SQL. La lógica detrás de esta función es sumar todos los valores y luego dividir la suma por el número total de valores.

Aquí está la sintaxis de la función AVG():

AVG ([ALL| DISTINCT] expresión)

Los argumentos para la función AVG() son los siguientes:

  • ALL: Este es el argumento predeterminado y considera todos los valores para calcular el promedio. No es obligatorio mencionarlo al usar esta función.
  • DISTINCT: Este argumento considera solo valores distintos para calcular el promedio. Si se especifica un número varias veces, la función AVG() lo considerará solo una vez al calcular el promedio.
  • Expresión: Este es el tipo de datos numéricos.

Exploremos algunos casos de uso de la función AVG():

Caso de uso básico

En este caso de uso, calcularemos el salario promedio que una empresa paga a sus empleados. Aquí hay una consulta de ejemplo:

SELECT AVG(salario) AS [Salario Promedio]
FROM [dbo].[Asociados]

Esta consulta devolverá el salario promedio pagado a todos los empleados. El resultado se mostrará como el salario promedio.

Usar AVG() con DISTINCT

El argumento DISTINCT en la función AVG() considera solo valores distintos para calcular el promedio. Aquí hay una consulta de ejemplo:

SELECT AVG(DISTINCT salario) AS [Salario Promedio]
FROM [dbo].[Asociados]

Esta consulta devolverá el salario promedio de todos los valores distintos. Ignorará los valores duplicados y calculará el promedio en función de los valores únicos.

Usar AVG() con la declaración GROUP BY

La función AVG() se puede usar con la declaración GROUP BY para calcular el salario promedio de diferentes grupos. Aquí hay una consulta de ejemplo:

SELECT género, AVG(salario) AS [Salario Promedio], SUM(salario) AS [Salario Total Pagado]
FROM [dbo].[Asociados]
GROUP BY género

Esta consulta devolverá el salario promedio y el salario total pagado para cada género. Proporciona información sobre la diferencia salarial promedio entre empleados masculinos y femeninos.

Usar AVG() con la cláusula WHERE

La función AVG() también se puede usar dentro de la cláusula WHERE para filtrar según condiciones. Aquí hay una consulta de ejemplo:

SELECT nombre, ciudad, edad, género, designación, salario
FROM [dbo].[Asociados]
WHERE salario > (SELECT AVG(salario) FROM [dbo].[Asociados])

Esta consulta devolverá una lista de empleados que reciben un salario mayor que el salario promedio de la empresa.

En conclusión, la función AVG() en SQL Server es una herramienta poderosa para calcular valores promedio. Se puede utilizar en varios escenarios para analizar datos y tomar decisiones informadas. Al comprender los diferentes casos de uso de la función AVG(), puede aprovechar sus capacidades para satisfacer sus requisitos comerciales específicos.

No dude en compartir sus comentarios en la sección de comentarios. Sus comentarios nos ayudan a mejorar y proporcionar un mejor contenido.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.