Ответ
Агрегатные и скалярные функции работают с данными по-разному:
Агрегатные функции:
- Обрабатывают набор значений и возвращают одно результирующее значение
- Работают с группами строк (например, GROUP BY)
- Примеры: SUM(), COUNT(), AVG(), MAX(), MIN()
SELECT AVG(price) FROM products;
Скалярные функции:
- Работают с каждым значением отдельно
- Применяются к каждой строке результата
- Примеры: UPPER(), ROUND(), CONCAT(), DATE_FORMAT()
SELECT UPPER(name) FROM users;
Ключевое отличие: агрегатные сводят множество значений к одному, скалярные преобразуют каждое значение индивидуально.