Артём Санников

Персональный блог

Мобильная разработка
Менеджеры пакетов
Хостинг провайдер
Смартфоны

Оператор HAVING в SQL

Оператор HAVING применяется для фильтрации строк по значениям агрегатных функций.

Обратите внимание, что оператор HAVING похож на оператор WHERE, но они отличаются друг от друга.

Давайте рассмотрим различия HAVING от WHERE:

  • WHERE – сначала выбираются записи по условию, а затем могут быть сгруппированы, отсортированы и т.д
  • HAVING – сначала группируются записи, а затем выбираются по условию, при этом, в отличие от WHERE, в нем можно использовать значения агрегатных функций.

Синтаксис оператора HAVING

SELECT поля_таблиц 
FROM список_таблиц 
GROUP BY поля_группировки 
HAVING условие_на_ограничение_строк_после_группировки

Практический пример

Выведем из таблицы Users общую сумму, потраченную на покупки, для каждого пользователя, где общая сумма покупки меньше, чем 3000 рублей.

SELECT user_id, SUM(count_product * unit_price) as 'sum'
FROM Users
GROUP BY user_id
HAVING sum < 3000;

Метки: , .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Реклама от Google
Реклама от Google