Справочник по функциям

AVG

Возвращает среднее арифметическое значений выражения в группе строк.

MySQL 8.1
AVG([DISTINCT] expr)

Параметры

DISTINCTключевое словонеобязательный
Учитывать каждое значение только один раз
exprDECIMAL
Числовое выражение, по которому считается среднее

Возвращаемое значение

Число: DECIMAL для целых и DECIMAL-значений, DOUBLE для чисел с плавающей точкой; NULL не учитываются, для пустого набора — NULL

Примеры

Средняя цена в платежах

MySQL 8.1
SELECT AVG(unit_price) AS avg_price
FROM Payments;
avg_price
3231.1786

Средняя цена по членам семьи

MySQL 8.1
SELECT family_member,
	AVG(unit_price) AS avg_price
FROM Payments
GROUP BY family_member;
family_memberavg_price
11542.5
210575.4286
3505.8
4250
5179.3333

Подробности

NULL не участвуют ни в сумме, ни в количестве, поэтому при пропусках AVG(x) не равно SUM(x) / COUNT(*). Чтобы считать пропуски нулями, используйте AVG(IFNULL(x, 0)). Среднее целых чисел выводится с четырьмя знаками после запятой: 3231.1786.

Смотрите также

Где изучить