Задача:
Напишите вместо пропуска в запросе агрегатную функцию, которая приведет среднеарифметического значения для столбца agg:
SELECT [ПРОПУСК] agg FROM table
Решение:
Для вычисления среднеарифметического значения (среднего значения) столбца используется агрегатная функция AVG().
Таким образом, пропущенная часть запроса будет AVG(.
Полный запрос будет выглядеть так:
SELECT AVG(agg) FROM table
Пояснение:
В SQL агрегатная функция AVG() используется для вычисления среднего значения числового столбца. Она суммирует все значения в указанном столбце и делит эту сумму на количество не-NULL значений в этом столбце.
Важные особенности AVG():
- Она работает только с числовыми типами данных.
- Она автоматически игнорирует значения
NULLпри расчете среднего.
Пример:
Предположим, у нас есть таблица Grades (Оценки) со столбцом Score (Балл):
StudentID | Score ----------|------ 1 | 85 2 | 90 3 | NULL 4 | 78 5 | 92
Если мы выполним запрос SELECT AVG(Score) FROM Grades;, функция AVG() просуммирует значения 85, 90, 78, 92 (игнорируя NULL) и разделит на 4 (количество не-NULL значений).
Сумма = 85 + 90 + 78 + 92 = 345
Количество не-NULL значений = 4
Среднее = 345 / 4 = 86.25
Результат запроса будет 86.25.
