AVG
Возвращает среднее арифметическое значений выражения в группе строк.
PostgreSQL 17.5
AVG([DISTINCT] expression)Параметры
- DISTINCTключевое словонеобязательный
- Учитывать каждое значение только один раз
- expressionnumeric
- Числовое выражение, по которому считается среднее
Возвращаемое значение
Число: numeric для целых и numeric, double precision для чисел с плавающей точкой; NULL не учитываются, для пустого набора — NULL
Примеры
Средняя цена в платежах
PostgreSQL 17.5
SELECT AVG(unit_price) AS avg_price
FROM Payments;Средняя цена по членам семьи
PostgreSQL 17.5
SELECT family_member,
AVG(unit_price) AS avg_price
FROM Payments
GROUP BY family_member
ORDER BY family_member;Подробности
Строки с NULL не входят ни в сумму, ни в количество: чтобы считать их нулями, используйте AVG(COALESCE(x, 0)). Для целых чисел результат — numeric с большим числом знаков после запятой, поэтому его обычно округляют через ROUND.