Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
MySQL: función AVG
Este tutorial de MySQL explica cómo usar MySQL Función promedio Con sintaxis y ejemplos.
describir
La función MySQL AVG devuelve el promedio de una expresión.
sintaxis
La sintaxis de la función AVG en MySQL es:
SELECT AVG(aggregate_expression) FROM tables [WHERE conditions];
Alternativamente, cuando los resultados se agrupan por una o más columnas, la sintaxis de la función AVG es:
SELECT expression1, expression2, ... expression_n, AVG(aggregate_expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
parámetro o parámetro
expresión1, expresión2, … expresión_n Expresiones que no están encapsuladas en funciones AVG y deben incluirse en la cláusula GROUP BY al final de la instrucción SQL. expresión_agregada Esta es la columna o expresión que se promediará. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Estas son las condiciones que se deben cumplir para seleccionar registros.
aplicar para
La función AVG se puede utilizar en las siguientes versiones de MySQL:
- MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23
Ejemplo: usar una sola expresión
Veamos algunos ejemplos de la función AVG de MySQL y exploremos cómo usar la función AVG en MySQL.
Por ejemplo, es posible que desee saber cuál es el salario promedio de todos los empleados que ganan más de $25,000 al año.
SELECT AVG(salary) AS "Avg Salary" FROM employees WHERE salary > 25000;
En este ejemplo de la función AVG, llamamos a la expresión AVG (salario) “Salario promedio”. Por lo tanto, cuando se devuelva el conjunto de resultados, aparecerá “Salario medio” como nombre de campo.
Ejemplo: uso de DISTINCT
Puede utilizar la cláusula DISTINCT en la función AVG. Por ejemplo, la siguiente declaración SQL devuelve el salario promedio para valores de salario únicos superiores a $25,000/año.
SELECT AVG(DISTINCT salary) AS "Avg Salary" FROM employees WHERE salary > 25000;
Si hay dos salarios a $30.000/año, solo uno de los valores se utilizará en la función AVG.
Ejemplo: uso de fórmula
La expresión contenida en la función AVG no tiene que ser un solo campo. También puede utilizar fórmulas. Por ejemplo, es posible que necesite una comisión promedio.
SELECT AVG(sales * 0.10) AS "Average Commission" FROM orders;
Ejemplo: uso de GROUP BY
También puede usar la función AVG para devolver el nombre del departamento y las ventas promedio (en el departamento correspondiente). Por ejemplo,
SELECT department, AVG(sales) AS "Avg sales" FROM order_details GROUP BY department;
Debido a que enumeró una columna en la declaración SELECT que no estaba encapsulada en la función AVG, debe usar la cláusula GROUP BY. Por lo tanto, el campo de departamento debe aparecer en la sección GROUP BY.