MariaDB оператор HAVING

В этом учебном пособии вы узнаете, как использовать MariaDB оператор HAVING с синтаксисом и примерами.

Описание

MariaDB оператор HAVING используется в сочетании с оператором GROUP BY, чтобы ограничить группы возвращаемых строк только теми, чье условие TRUE.

Синтаксис

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

SELECT expression1, expression2, .. expression_n,
aggregate_function (expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, .. expression_n
HAVING condition;

Параметры или аргументы

aggregate_function
Это может быть такая функция, как SUM, COUNT, MIN, MAX или AVG.
expression1, expression2, .. expression_n
Выражения, которые не заключены в агрегатную функцию, должны быть включены в предложение GROUP BY.
WHERE conditions
Необязательный. Это условия для выбора записей.
HAVING condition
Это еще одно условие, применяемое только к агрегированным результатам, чтобы ограничить группы возвращаемых строк. Только те группы, чье условие оценивается как TRUE, будут включены в набор результатов.

Пример - использование функции SUM

Рассмотрим пример использования оператора HAVING с функцией SUM в MariaDB.
Например:

В этом примере оператора HAVING используется функция SUM для возврата site_id и суммы всех значений file_size, где site_id меньше 100. MariaDB оператор HAVING отфильтрует результаты так, что будут возвращены только те значения site_id у которых SUM(file_size) больше 500 .

Пример - использование функции COUNT

Рассмотрим, как использовать оператор HAVING с функцией COUNT в MariaDB.
Например:

В этом примере используется функция COUNT для возврата site_id и количества всех страниц (для этого site_id), которые имеют site_name либо "Google.com", либо "Yandex.com". MariaDB оператор HAVING отфильтрует результаты так, что будут возвращены только значения site_id с количеством страниц, большим или равным 999.

Пример - использование функции MIN

Далее давайте рассмотрим пример использования оператора HAVING с функцией MIN в MariaDB.
Например:

Этот пример использует функцию MIN в MariaDB для возврата site_id и минимального значения file_size (для этого site_id) где site_id меньше 50. Оператор HAVING будет возвращать только те значения site_id, где минимальное file_size меньше 150.

Пример - использование функции MAX

Наконец, давайте рассмотрим пример использования оператора HAVING в MariaDB с функцией MAX.
Например:

Этот пример использует функцию MAX, чтобы вернуть site_id и минимальный file_size (для этого site_id) где site_id меньше 50. Оператор HAVING будет возвращать только те значения site_id, где максимальное file_size больше 2500.