AVG() en SQL permite de­te­r­mi­nar el promedio de los valores co­n­te­ni­dos en una columna. La función se puede ampliar y utilizar para otras acciones, ignorando los valores NULL.

¿Qué es AVG() en SQL?

La función AVG() en Stru­c­tu­red Query Language (SQL) te permite calcular el valor medio o promedio de los valores al­ma­ce­na­dos en una columna es­pe­cí­fi­ca. Para la consulta utiliza el comando SQL SELECT. Esta función es es­pe­cia­l­me­n­te útil para hacer balances, análisis y cálculos de precios, entre otras cosas, ya que los valores promedio pro­po­r­cio­nan rá­pi­da­me­n­te una visión general fiable. Es im­po­r­ta­n­te tener en cuenta que la función no tiene en cuenta los valores NULL en sus cálculos.

Se­r­vi­do­res virtuales (VPS)
VPS rentables en se­r­vi­do­res Dell En­te­r­pri­se
  • 1 Gb/s de ancho de banda y tráfico ilimitado
  • 99,99 % de tiempo de actividad y ce­r­ti­fi­ca­ción ISO
  • Soporte 24/7 ga­la­r­do­na­do y asesor personal

Sintaxis y fu­n­cio­na­mie­n­to

La sintaxis básica de la función AVG() es muy sencilla e incluye pocos pa­rá­me­tros. Tiene el siguiente aspecto:

SELECT AVG(nombre_de_la_columna)
FROM nombre_de_la_tabla;
sql

En este ejemplo, calculas el promedio uti­li­za­n­do el comando SELECT y la función AVG(). Con el comando FROM es­pe­ci­fi­cas qué tabla se debe utilizar.

Si quieres utilizar la función AVG() de SQL de forma aún más precisa, puedes utilizar la condición WHERE. La sintaxis es la siguiente:

SELECT AVG(nombre_de_la_columna)
FROM nombre_de_la_tabla
WHERE condición;
sql

También puedes enumerar varias co­n­di­cio­nes.

Ejemplos del fu­n­cio­na­mie­n­to de AVG() en SQL

La mejor forma de entender cómo funciona AVG() en SQL es utilizar la función para un propósito es­pe­cí­fi­co. Imagina una tabla llamada “Li­s­ta­Clie­n­tes” en la que se almacenan los clientes: sus nombres, números de cliente, ciudades, cantidad de productos comprados e importe total en euros para un período concreto. La tabla sería la siguiente:

Número Cliente Nombre Ciudad Artículos Importe Total
1427 Sánchez Madrid 14 634
1377 García Barcelona 9 220
1212 Fernández Barcelona 15 619
1431 Pascual Valencia 22 912
1118 Rivera Sevilla 10 312

Ahora puedes, por ejemplo, calcular cuánto te han pagado tus clientes de media con la función AVG(). Utiliza este comando:

SELECT AVG(ImporteTotal)
FROM ListaClientes;
sql

El resultado será el siguiente:

Importe Total
539,4

Si quieres saber cuántos artículos han pedido tus clientes de media, el comando es similar:

SELECT AVG(Artículos)
FROM ListaClientes;
sql

El resultado será:

Artículos
14

La función combinada con WHERE

Como has podido aprender an­te­rio­r­me­n­te, puedes añadir una o más co­n­di­cio­nes a la función para obtener re­su­l­ta­dos más es­pe­cí­fi­cos. Por ejemplo, si quieres calcular la fa­c­tu­ra­ción media de los clientes en Barcelona debes añadir:

SELECT AVG(ImporteTotal)
FROM ListaClientes
WHERE Ciudad = 'Barcelona';
sql

El resultado será:

Importe Total
419,5

Co­m­bi­na­ción con otros pa­rá­me­tros

También puedes combinar la función AVG() con otros pa­rá­me­tros para, por ejemplo, mostrar todos los clientes cuyo gasto supera la media. El código es el siguiente:

SELECT NúmeroCliente, Nombre, Ciudad, Artículos, ImporteTotal
FROM ListaClientes
WHERE ImporteTotal > (SELECT AVG(ImporteTotal) FROM ListaClientes);
sql

El resultado será:

Número Cliente Nombre Ciudad Artículos Importe Total
1427 Sánchez Madrid 14 634
1212 Fernández Barcelona 15 619
1431 Pascual Valencia 22 912

Otras funciones similares a AVG() en SQL

Además de AVG(), SQL ofrece otras funciones que te permiten calcular ciertas cosas fá­ci­l­me­n­te. Por ejemplo, SUM() te permite calcular la suma de todos los valores numéricos de una columna y COUNT() te permite saber cuántas filas cumplen un de­te­r­mi­na­do criterio.

Consejo

La solución ideal para tu base de datos: con el Hosting SQL Server de IONOS puedes elegir entre MSSQL, MySQL y MariaDB. Además, di­s­fru­ta­rás de una ar­qui­te­c­tu­ra de seguridad robusta, ase­so­ra­mie­n­to pe­r­so­na­li­za­do y una co­n­fi­gu­ra­ción pe­r­fe­c­ta­me­n­te adaptada a tus ne­ce­si­da­des.

Ir al menú principal