SQL запросы к базе данных. Часть #2.
![SQL запросы к базе данных. Часть #2.](/images/articles/sql_request_2.jpg)
Агрегатные функции
Когда нам нужно получить сумму, максимальное, минимальное или среднее значение хранящихся в базе данных чисел, то мы используем агрегатные функции. Большинство систем управления базами данных поддерживают 5 агрегатных (математических) функций.
SUM рассчитывает сумму
Вычислим сумму полей «Quantity» в таблице «OrderDetails».
![SQL запросы к базе данных.](/images/articles/sql_request_08.jpg)
Пишем слово SELECT, а затем название агрегатной функции SUM(). В скобках указываем, значения какого столбца мы хотим суммировать. Дальше пишем оператор FROM и имя таблицы.
SELECT SUM(Quantity)
FROM OrderDetails;
Функция SUM() вернула общую сумму указанного столбца.
![SQL запросы к базе данных.](/images/articles/sql_request_09.jpg)
MAX рассчитывает максимальное значение
Найдем с помощью оператора MAX() самую большую стоимость продукта.
![SQL запросы к базе данных.](/images/articles/sql_request_10.jpg)
SELECT MAX(Price)
FROM Products;
Функция MAX нашла цену самого дорогого продукта в столбце Price из таблицы Products.
![SQL запросы к базе данных.](/images/articles/sql_request_11.jpg)
MIN рассчитывает минимальное значение
Найдем с помощью оператора MIN() самую маленькую стоимость продукта.
SELECT MIN(Price)
FROM Products;
Функция MIN нашла цену самого дешевого продукта в столбце Price из таблицы Products.
![SQL запросы к базе данных.](/images/articles/sql_request_12.jpg)
COUNT подсчитывает количество значений
Функция COUNT() возвращает количество строк, которое соответствует заданному критерию. Давайте выведем общее количество товаров, хранящихся в базе данных. Проще всего подсчитать количество продуктов по ID.
SELECT COUNT(ProductID)
FROM Products;
![SQL запросы к базе данных.](/images/articles/sql_request_13.jpg)
AVG рассчитывает среднее значение
Функция AVG() возвращает среднее значение чисел в указанном столбце.
SELECT AVG(Price)
FROM Products;
![SQL запросы к базе данных.](/images/articles/sql_request_14.jpg)
Группировка данных Group By
Ключевое слово Group By чаще всего используется вместе с агрегатными функциями, чтобы группировать столбцы по тому или иному признаку. Например, нам нужно подсчитать количество клиентов в базе из каждой страны по отдельности.
![SQL запросы к базе данных.](/images/articles/sql_request_15.jpg)
Пишем оператор SELECT и рассчитываем количество клиентов по столбцу CustomerID для каждой страны и группируем результат расчета по странам. Например из Аргентины у нас 3 клиента, а из Бельгии - 2 клиента.
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;
![SQL запросы к базе данных.](/images/articles/sql_request_16.jpg)
Упорядочим наш список и отсортируем клиентов в порядке убывания. Нам нужно знать, в каких странах живет всех больше клиентов.
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;
Всех больше клиентов проживает в USA.
![SQL запросы к базе данных.](/images/articles/sql_request_17.jpg)
-
-
Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.