Встречается на 2% собеседований по Java
Как связать агрегатные функции и GROUP BY
GROUP BY используется для группировки строк по значениям одного или нескольких столбцов, а агрегатные функции (COUNT, SUM, AVG, MAX, MIN) применяются к каждой группе для вычисления сводных значений.
Пример:
sql
SELECT department, COUNT(*) as employee_count, AVG(salary) as avg_salary
FROM employees
GROUP BY department;Ключевые моменты:
- Все неагрегированные столбцы в SELECT должны быть в GROUP BY
- Агрегатные функции вычисляются для каждой группы отдельно
- Можно группировать по нескольким столбцам
В Java это можно реализовать через Stream API:
java
Map<String, Double> avgSalaryByDept = employees.stream()
.collect(Collectors.groupingBy(
Employee::getDepartment,
Collectors.averagingDouble(Employee::getSalary)
));
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы