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 Nueva York 14 634
1377 García Los Ángeles 9 220
1212 Fernández Los Ángeles 15 619
1431 Miller Pro­vi­de­n­ce 22 912
1118 Johnson Houston 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 = 'Los Ángeles';
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 Nueva York 14 634
1212 Fernández Los Ángeles 15 619
1431 Miller Pro­vi­de­n­ce 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