🔹 Группировка: GROUP BY — не страшно 🔹 Зачем GROUP BY и как не напутать с SUM/COUNT/HAVING? 🔸 GROUP BY нужен, чтобы собрать похожие строки в группы и получить метрики по каждой группе. Без него SUM и COUNT вернут только общие числа по всей таблице, и вы потеряете разбивку по категориям.
🔸 SUM суммирует числовые поля, COUNT считает строки. WHERE отбирает строки до группировки; HAVING фильтрует уже сгруппированные результаты (например — группы с суммой больше порога).
🔸 Практический пример: SELECT user_id, COUNT(*) AS cnt, SUM(amount) AS total FROM payments WHERE status = 'done' GROUP BY user_id HAVING SUM(amount) > 100;
🔸 Совет: в SELECT либо агрегаты, либо колонки из GROUP BY — иначе ошибка. Старайтесь сначала ужать данные через WHERE, а HAVING использовать только для условий на агрегаты.
📚 GROUP BY + SUM/COUNT дают групповые метрики; HAVING — фильтр по этим метрикам.
➡️ Мы в Telegram - Сетке - Дзен Буду рад вашей реакции здесь⬇️
В этом посте были ссылки, но мы их удалили по правилам Сетки