В этом учебном пособии вы узнаете, как использовать MariaDB функцию AVG с синтаксисом и примерами.
Описание
MariaDB функция AVG возвращает среднее значение выражения.
Синтаксис
Синтаксис функции AVG в MariaDB:
FROM tables
[WHERE conditions];
Или синтаксис для функции AVG при группировке результатов по одному или нескольким столбцам:
AVG(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, .. expression_n;
Параметры или аргументы
- expression1, expression2, .. expression_n
- Выражения, которые не заключены в функцию AVG и должны быть включены в предложение GROUP BY в конце SQL запроса.
- aggregate_expression
- Это столбец или выражение, которое будет усреднено.
- tables
- Таблицы, из которых вы хотите получить записи. В предложении FROM должна быть указана хотя бы одна таблица.
- WHERE conditions
- Необязательный. Это условия, которые должны быть соблюдены для выбора записей.
Применение
Функцию AVG можно использовать в следующих версиях MariaDB:
- MariaDB 10
Пример с одним выражением
Рассмотрим некоторые примеры функции AVG, чтобы понять, как использовать функцию AVG в MariaDB.
Сначала рассмотрим пример использования функции AVG с одним выражением в MariaDB.
Например:
1 2 3 |
SELECT AVG(file_size) AS "Average File Size" FROM pages WHERE site_name = 'Google.com'; |
В этом примере функции AVG мы вычислим средний размер файла, где site_name - "Google.com". Мы использовали псевдоним AVG (file_size) как "Average File Size". В результате "Average File Size" будет отображаться как заголовок столбца при возвращении набора результатов.
Пример - использование DISTINCT
Далее давайте рассмотрим, как использовать предложение DISTINCT в функции AVG в MariaDB.
Например:
1 2 3 |
SELECT AVG(DISTINCT file_size) AS "Averaging Unique File Sizes" FROM pages WHERE site_name = 'Google.com'; |
В этом примере AVG, если было два одинаковых значения file_size, только одно из этих значений будет использовано при вычислении функции AVG.
Пример - использование формулы
expression, содержащееся в функции AVG, необязательно должно быть одним полем. Вы также можете использовать формулу. Давайте посмотрим, как использовать формулу в функции AVG в MariaDB.
Например:
1 2 3 |
SELECT AVG(file_size * 1.1) AS "Average" FROM pages WHERE site_name = 'Bing.com'; |
В этом примере функции AVG столбец file_size будет умножен на 1,1, а результат будет усреднен.
Пример - использование GROUP BY
Наконец, давайте посмотрим, как использовать оператор GROUP BY с функцией AVG в MariaDB.
Если вы возвращаете столбцы, которые не инкапсулированы в функции AVG, вы должны использовать предложение GROUP BY.
Например:
1 2 3 4 |
SELECT site_id, AVG(file_size) AS "Average File Size" FROM pages WHERE site_name = 'Yandex.com' GROUP BY site_id; |
В этом примере функции AVG мы должны использовать оператор GROUP BY, поскольку поле site_id не инкапсулировано в функцию AVG. Поэтому столбец site_id должен быть указан в разделе GROUP BY в конце SQL запроса.