Sql min max: SQL MIN() and MAX() Functions
Функции MIN и MAX в SQL.
Вы здесь:
Главная — MySQL — SQL — Функции MIN и MAX в SQL.
Всем привет. Сегодня мы поговорим про функции max и min в sql.
MIN
Функция min() возвращает самое маленькое значение в колонке.
Например, у вас есть товары в таблице, и вы хотите узнать, на какой товар самая низкая цена. Для этой задачи запрос будет примерно таким:
SELECT MIN(price) AS 'минимальная цена' FROM products;
Функция min отберет минимальную цену на товар из таблицы прдуктов и выведит его с заголовком «цена».
MAX
Противоположная по значению функции min функция max() возвращает максимальное значение поля.
Для примера возьмем все ту же таблицу с продуктами и отберем максимальную цену на товар.
SELECT MAX(price) AS 'максимальная цена' FROM products;
Также данную функцию можно использовать, чтобы выполнить такую часто встречающуюся задачу, как выборка максимального id из таблицы.
SELECT MAX(id) AS id FROM table;
Итак, на этом все. Спасибо за внимание!
-
Создано 06.07.2014 20:48:25 -
Михаил Русаков
Предыдущая статья Следующая статья
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
-
Кнопка:
<a href=»https://myrusakov.ru» target=»_blank»><img src=»https://myrusakov.ru/images/button.gif» alt=»Как создать свой сайт» /></a>Она выглядит вот так:
-
Текстовая ссылка:
<a href=»https://myrusakov.ru» target=»_blank»>Как создать свой сайт</a>Она выглядит вот так: Как создать свой сайт
- BB-код ссылки для форумов (например, можете поставить её в подписи):
[URL=»https://myrusakov.ru»]Как создать свой сайт[/URL]
SQL Min и Max
Функции SQL MIN() и MAX()
Функция MIN() возвращает наименьшее значение из выбранного столбца.
Функция MAX() возвращает наибольшее значение их выбранного столбца.
Синтаксис MIN()
SELECT MIN(column_name)
FROM table_name
WHERE condition;
| SELECT MIN(column_name) FROM table_name WHERE condition; |
Синтаксис MAX()
SELECT MAX(column_name)
FROM table_name
WHERE condition;
| SELECT MAX(column_name) FROM table_name WHERE condition; |
Пример таблицы ‘Products’
ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
---|---|---|---|---|---|
1 | Сыр | 1 | 1 | 100 гр | 200 |
2 | Хлеб | 1 | 1 | 1 шт | 50 |
3 | Масло | 1 | 2 | 1 шт | 100 |
4 | Молоко | 2 | 2 | 1 шт | 50 |
5 | Сахар | 2 | 2 | 1 кг | 60 |
Пример MIN()
Следующий SQL запрос находит цену самого дешевого продукта:
SELECT MIN(Price) AS SmallestPrice
FROM Products;
| SELECT MIN(Price) AS SmallestPrice FROM Products; |
Пример MAX()
Следующий SQL запрос находит цену самого дорогого продукта:
SELECT MAX(Price) AS LargestPrice
FROM Products;
| SELECT MAX(Price) AS LargestPrice FROM Products; |
SQL функция MIN — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite
В этом учебном материале вы узнаете, как использовать SQL функцию MIN с синтаксисом и примерами.
Описание
SQL функция MIN используется для возврата минимального значения выражения в операторе SELECT.
Синтаксис
Синтаксис для функции MIN в SQL.
SELECT MIN(aggregate_expression)
FROM tables
[WHERE conditions];
Или синтаксис для функции MIN при группировке результатов по одному или нескольким столбцам.
SELECT expression1, expression2, … expression_n,
MIN(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, … expression_n;
Параметры или аргумент
- expression1, expression2, … expression_n
- Выражения, которые не инкапсулированы в функции MIN и должны быть включены в предложение GROUP BY в конце SQL запроса
- aggregate_expression
- Это столбец или выражение, из которого будет возвращено минимальное значение
- tables
- Таблицы, из которых вы хотите получить записи. В предложении FROM должна быть указана хотя бы одна таблица
- WHERE conditions
- Необязательный. Это условия, которые должны быть выполнены для выбора записей
Пример — с одним выражением
Простейшим способом использования SQL функции MIN было бы возвращение одного поля, которое вычисляет значение MIN.
Например, вы можете узнать минимальную зарплату всех сотрудников.
SELECT MIN(salary) AS «Lowest salary»
FROM employees;
SELECT MIN(salary) AS «Lowest salary» FROM employees; |
В этом примере SQL функции MIN у нас выражению MIN(salary) указан псевдоним «Lowest salary». В результате «Lowest salary» будет отображаться как имя поля при возврате набора результатов.
Пример — использование SQL GROUP BY
В некоторых случаях вам потребуется использовать SQL оператор GROUP BY с функцией MIN.
Например, вы также можете использовать SQL функцию MIN, чтобы вернуть название каждого отдела и минимальную зарплату в отделе.
SELECT department,
MIN(salary) AS «Lowest salary»
FROM employees
GROUP BY department;
SELECT department, MIN(salary) AS «Lowest salary» FROM employees GROUP BY department; |
Поскольку в SQL операторе SELECT указан один столбец, который не инкапсулирован в SQL функцию MIN, необходимо использовать SQL оператор GROUP BY. Поэтому поле department должно быть указано в разделе GROUP BY.
MAX ФУНКЦИЯ — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite
В этом учебном пособии вы узнаете, как использовать Oracle/PLSQL функцию MAX с синтаксисом и примерами.
Описание
Oracle/PLSQL функция MAX возвращает максимальное значение выражения.
Синтаксис
Синтаксис Oracle/PLSQL функции MAX:
SELECT MAX(aggregate_expression)
FROM tables
[WHERE conditions];
ИЛИ синтаксис для функции MAX с группировкой результатов по одному или нескольким столбцам:
SELECT expression1, expression2, … expression_n,
MAX(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, … expression_n;
Параметры или аргументы
expression1, expression2, … expression_n — выражения, которые не инкапсулированы в функцию MAX и должны быть включены в оператор GROUP BY в конце SQL преложения.
aggregate_expression — это столбец или выражение, из которого будет возвращено максимальное значение.
tables — таблицы, из которых вы хотите получить записи. В операторе FROM должна быть указана хотя бы одна таблица.
WHERE conditions — необязательный. Это условия, которые должны быть соблюдены для выбранных записей.
Применение
Функцию MAX можно использовать в следующих версиях Oracle/PLSQL:
- Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i
Пример с единичным полем
Рассмотрим несколько примеров функции MAX и изучим, как использовать функцию MAX в Oracle/PLSQL.
Например, вы, возможно, пожелает узнать, какая максимальная зарплата всех employees (сотрудников).
SELECT MAX(salary) AS «Highest Salary» FROM employees;
SELECT MAX(salary) AS «Highest Salary» FROM employees; |
В этом примере функции MAX, выражение MAX(salary) представлено под псевдоним «Highest Salary». В результате, «Highest Salary» будет отображаться как имя поля, когда возвратится результирующий набор.
Пример — использование GROUP BY
В некоторых случаях, вам необходимо будет использовать группировку GROUP BY с функцией MAX.
Например, вы могли бы использовать функцию MAX, чтобы вернуть название department (отдела) и MAX(salary) (максимальную зарплату отдела).
SELECT department, MAX(salary) AS «Highest salary»
FROM employees
GROUP BY department;
SELECT department, MAX(salary) AS «Highest salary» FROM employees GROUP BY department; |
Поскольку в вашем операторе SELECT указан один столбец, который не инкапсулирован в функции MAX, то вы должны использовать оператор GROUP BY. Поэтому поле department (отдел) должно быть указано в операторе GROUP BY.
Вопросы и ответы
Вопрос:
Я пытаюсь вытащить некоторую информацию из таблицы. Для простоты, скажем таблица (report_history) имеет 4 колонки: user_name, report_job_id, report_name и report_run_date.
Каждый раз, когда выполняется отчет в Oracle, запись фиксируется в таблице, отмечая вышеперечисленную информацию. То, что я пытаюсь сделать, это вытащить из этой таблицы, когда и кем был запущен последний отдельный отчет.
Мой первоначальный запрос:
SELECT report_name, MAX(report_run_date)
FROM report_history
GROUP BY report_name
SELECT report_name, MAX(report_run_date) FROM report_history GROUP BY report_name |
работает нормально. Тем не менее, это не дает имя пользователя, запустившего отчет.
Добавление user_name к списку выборки и к оператору GROUP BY возвращает несколько строк для каждого отчета; результаты показывают последнее время, когда каждый человек запускал каждый отчет остается вопросом. (т.е. User1 запускал ОТЧЕТ1 01-Июль-14, User2 запускал ОТЧЕТ1 01-АВГ-14). Я не хочу этого … Я просто хочу знать, кто запускал определенный отчет и когда последний раз он был запущен.
Есть предложения?
Ответ:
Это все становится немного сложнее. В запросе ниже SQL SELECT вернет результаты, которые вы хотите:
SELECT rh.user_name,
rh.report_name,
rh.report_run_date
FROM report_history rh,
(SELECT MAX(report_run_date) AS maxdate,
report_name
FROM report_history
GROUP BY report_name) maxresults
WHERE rh.report_name = maxresults.report_name
AND rh.report_run_date= maxresults.maxdate;
SELECT rh.user_name, rh.report_name, rh.report_run_date FROM report_history rh, (SELECT MAX(report_run_date) AS maxdate, report_name FROM report_history GROUP BY report_name) maxresults WHERE rh.report_name = maxresults.report_name AND rh.report_run_date= maxresults.maxdate; |
Во-первых, мы присвоим псевдоним rh первому экземпляру таблицы report_history.
Во-вторых, мы включили два компонента в оператор FROM. Первый из них является таблица report_history (псевдоним RH). Второй является подзапрос с псевдонимом maxresults:
(SELECT MAX(report_run_date) AS maxdate, report_name
FROM report_history
GROUP BY report_name) maxresults
(SELECT MAX(report_run_date) AS maxdate, report_name FROM report_history GROUP BY report_name) maxresults |
Имеем псевдоним MAX(report_run_date) как maxdate и имеем псевдоним всего результирующего набора как maxresults.
Теперь, когда мы составили этот запрос в пределах нашего FROM, Oracle позволит нам объединить эти результаты нашей исходной таблицы report_history. Таким образом, мы объединили поля report_name и report_run_date таблицы с псевдонимами rh и maxresults. Это позволили нам получить report_name, MAX(report_run_date), а также user_name.
SQL SELECT MIN, MAX, Date, Row, Id — с примерами
Как мне получить максимальное и минимальное значения для столбца таблицы?
SELECT MIN возвращает минимальное значение для столбца.
И SELECT MAX возвращает максимальное значение для столбца.
Синтаксис SQL SELECT MIN и MAX
Общий синтаксис MIN:
ВЫБРАТЬ МИН (имя столбца) ОТ имя-таблицы
Общий синтаксис MAX:
ВЫБРАТЬ МАКС. (Имя-столбца) ОТ имя-таблицы
ПРОДУКТ |
---|
Идентификатор |
Наименование продукта |
Идентификатор поставщика |
Цена за единицу |
Упаковка |
Снято с производства |
Примеры SQL MAX и MIN
Проблема : Найти самый дешевый товар
ВЫБЕРИТЕ MIN (UnitPrice) ОТ продукта
Результат:
ЗАКАЗ |
---|
Id |
OrderDate |
OrderNumber |
CustomerId |
TotalAmount |
Задача : найти самый крупный заказ, размещенный в 2014 г.
ВЫБРАТЬ МАКС. (TotalAmount) ОТ [Заказ] ГДЕ ГОД (Дата заказа) = 2014
Результат:
ЗАКАЗ |
---|
Id |
OrderDate |
OrderNumber |
CustomerId |
TotalAmount |
Проблема : Найти дату последнего заказа в 2013 г.
ВЫБРАТЬ МАКС. (Дата заказа) ОТ [Заказ] ГДЕ ГОД (Дата заказа) = 2013
Примечание. MIN и MAX можно использовать с числовыми, строковыми значениями и значениями даты.
Результат:
Дата заказа |
---|
2013-12-31 00: 00: 00.000 |
.Функция
SQL MIN — возвращает минимальное значение в наборе
Сводка : в этом руководстве вы узнаете, как использовать функцию SQL MIN для получения минимального значения в наборе.
Введение в функцию SQL MIN
Функция MIN
возвращает минимальное значение в наборе значений. Функция MIN
игнорирует значения NULL
. Ниже приведен синтаксис функции MIN
:
MIN (выражение DISTINCT или ALL) |
Модификатор ALL
указывает функции MIN
найти минимальное значение во всех значениях. включая дубликаты.Функция MIN ()
по умолчанию использует модификатор ALL
, поэтому вам не нужно указывать его явно.
В отличие от других агрегатных функций, например SUM, COUNT и AVG, модификатор DISTINCT
не применим к функции MIN ()
. Модификатор DISTINCT
предназначен только для совместимости с ISO.
Примеры функции SQL MIN
Давайте взглянем на таблицу продуктов
в базе данных примеров:
Пример простой функции MIN
Чтобы найти наименьшую цену за единицу продукции в таблице продуктов
, вы используете МИН ()
функционирует следующим образом:
ВЫБРАТЬ МИН (цена за единицу) ИЗ продуктов; |
Чтобы получить самые дешевые товары, вы должны использовать подзапрос, который использует функцию MIN ()
как следующий запрос:
SELECT productid, productname, unitprice FROM товаров ГДЕ цена единицы = ( ВЫБРАТЬ МИН (цена единицы) ИЗ товаров); |
Внешний запрос получает самые дешевые продукты, цена за единицу которых соответствует самой низкой цене, возвращенной подзапросом.Если цена за единицу нескольких продуктов совпадает с наименьшей ценой, запрос вернет более одной строки.
Функция SQL MIN с предложением GROUP BY, пример
Чтобы найти наименьшую цену за единицу продукта в каждой категории, используйте функцию MIN ()
с предложением GROUP BY:
SELECT categoryid, MIN (unitprice) ИЗ продуктов GROUP BY categoryid; |
Пункт GROUP BY
делит продукты по categoryid
на группы.Для каждой группы функция MIN ()
возвращает наименьшую цену за единицу.
Функция SQL MIN с предложением HAVING, пример
Чтобы получить категорию с наименьшей ценой за единицу меньше 7 долларов, используйте функцию MIN ()
с предложениями GROUP BY
и HAVING следующим образом:
SELECT categoryid, MIN (unitprice) FROM products GROUP BY categoryid HAVING MIN (unitprice) <7; |
SQL MIN с примером коррелированного подзапроса
Чтобы получить самый дешевый продукт в каждой категории, вы используете функцию MIN ()
в коррелированном подзапросе следующим образом:
SELECT categoryid, productid, productName, unitprice FROM продуктов a WHERE unitprice = ( SELECT MIN (unitprice) FROM продуктов b WHERE b.categoryid = a.categoryid) |
Внешний запрос сканирует все строки в таблице products
и возвращает продукты, цена за единицу которых соответствует наименьшей цене в каждой категории, полученной в результате коррелированного подзапроса.
В этом руководстве мы показали вам, как использовать функцию SQL MIN для получения минимального значения в наборе.
- Было ли это руководство полезным?
- Да Нет
.
Использование операторов SUM, AVG, COUNT, MIN, MAX в SQL
SQL — это язык отчетности. При построении отчетов вы используете язык SQL, даже если вы используете больше интерфейсов «укажи и щелкни», таких как Microsoft Access, которые создают для вас операторы. В любой системе отчетности используется какой-то SQL (за исключением концепций Big Data, где NoSQL является стандартом). В большинстве требований к отчетности вам необходимо использовать агрегатные функции. Агрегатные функции — это готовые функции SQL, которые можно использовать вместо создания собственного кода.Есть несколько функций на выбор, и синтаксис зависит от вашей платформы. В этом примере мы будем использовать MSSQL, чтобы показать вам, как использовать важные функции SQL.
Функция СУММ: сложение значений
Функция СУММ — это агрегатная функция, которая суммирует все значения в определенном столбце. Вы можете использовать функцию СУММ только с числовыми значениями, целыми или десятичными.
Например, предположим, что у вас есть список заказов в таблице.Вы хотите подвести итоги общего заказа на определенную дату. Вы можете использовать функцию СУММ, чтобы суммировать общую стоимость ваших заказов, без написания более сложного SQL для суммирования значений за вас. Ниже приведен пример таблицы, содержащей список заказов.
OrderId | CustomerId | Итого | Дата заказа |
1 | 321 | 10 | 1/2/2014 |
2 | 455 | 40 | 02.03.2014 |
3 | 456 | 20 | 10.03.2014 |
В этом примере вы хотите просуммировать общие заказы за март.Следующий оператор SQL суммирует эти заказы.
ВЫБРАТЬ СУММУ (Итого) ИЗ заказов
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Возвращаемое значение из приведенного выше оператора SQL — 60. Код внешнего интерфейса отвечает за форматирование результата. Если вы заметили, знак доллара не сохраняется в таблице. Если столбец не задан как строковый, SQL не хранит форматированные числа, такие как знаки доллара со значениями. Вы должны отформатировать внешний отчет со знаком доллара и конечными нулями после десятичной точки.
В приведенном выше примере для возврата результатов используются даты. Вы можете использовать любые параметры в предложении WHERE так же, как и любой другой оператор SELECT.
Функция AVG: усредните результаты
Функция СРЕДНЕГО работает аналогично СУММ. Разница в том, что функция AVG складывает или суммирует все значения, а затем вычисляет среднее значение. Среднее значение основано на количестве записей, возвращаемых оператором SQL, поэтому вы получаете разные результаты в зависимости от вашего предложения WHERE.
Давайте использовать ту же таблицу заказов, что и раньше. Следующие данные находятся в нашей таблице заказов.
OrderId | CustomerId | Итого | Дата заказа |
1 | 321 | 10 | 1/2/2014 |
2 | 455 | 40 | 02.03.2014 |
3 | 456 | 20 | 10.03.2014 |
Мы снова можем использовать то же предложение WHERE, что и в функции SUM выше.Следующий оператор SQL показывает, как использовать функцию AVG.
ВЫБРАТЬ СРЕДНЕЕ (Всего) ИЗ заказов
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Новое значение, возвращаемое функцией AVG, равно 30. Среднее значение вычисляется путем суммирования всех значений и деления на общее количество возвращенных записей для получения суммированных результатов. В этом примере возвращаются две записи, которые в сумме дают 60, поэтому деление этого числа на два возвращает 30.
Функция COUNT: подсчет количества возвращенных записей
Иногда вам просто нужно быстро подсчитать количество записей, возвращаемых запросом.Вы также можете использовать функцию COUNT для подсчета количества записей в таблице. Предположим, вы хотите узнать, сколько всего у вас заказов. Вы можете использовать функцию COUNT, чтобы получить общее количество записей заказа.
Используя ту же таблицу, у нас есть следующие записи.
OrderId | CustomerId | Итого | Дата заказа |
1 | 321 | 10 | 1/2/2014 |
2 | 455 | 40 | 02.03.2014 |
3 | 456 | 20 | 10.03.2014 |
С помощью этой небольшой таблицы легко определить количество записей, но обычно у вас есть тысячи записей в таблице.
Следующий код SQL показывает, как суммировать ваши записи.
ВЫБРАТЬ СЧЕТЧИК (*) ИЗ ЗАКАЗОВ
Результатом будет 3, то есть общее количество записей в вашей таблице. Обратите внимание, что в этом операторе SQL используется символ звездочки. Вы также можете использовать имя столбца, и будут возвращены те же результаты. Например, для следующего оператора SQL по-прежнему возвращается три.
ВЫБРАТЬ СЧЕТЧИК (OrderId) ИЗ заказов
Функции MIN и MAX
Функции MIN и MAX находят минимальное или максимальное значение в наборе записей.Например, вы можете захотеть найти максимальную или самую высокую сумму заказов, которые у вас были за время работы. Вы также можете узнать минимальную или самую низкую общую стоимость заказа. В соответствии с этими бизнес-требованиями вы используете функции MIN и MAX.
Мы будем использовать ту же таблицу заказов, что и раньше.
OrderId | CustomerId | Итого | Дата заказа |
1 | 321 | 10 | 1/2/2014 |
2 | 455 | 40 | 02.03.2014 |
3 | 456 | 20 | 10.03.2014 |
Предположим, вы хотите найти наибольшую сумму заказа во всей таблице заказов.Следующий оператор SQL получает наивысший порядок.
ВЫБРАТЬ МАКС. (Итого) ИЗ заказа
Результатом приведенного выше оператора будет «40». Опять же, любое форматирование должно выполняться после возврата набора записей, потому что SQL не хранит такие форматы, как валюта.
Обратите внимание, что в приведенном выше утверждении нет предложения WHERE. Приведенный выше оператор SQL просматривает все записи и находит итоговое значение наивысшего порядка. Вы можете добавить фильтр предложения WHERE, чтобы ограничить поиск.Например, предположим, что вы хотите вернуть только максимальную общую стоимость заказа за март. Следующий оператор SQL выполняет ваш поиск.
ВЫБРАТЬ МАКС. (Итого) ИЗ заказа
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Опять же, приведенный выше оператор SQL возвращает 40.
Как и функция MAX, вы также можете получить наименьшее итоговое значение в таблице заказов. Следующий оператор SQL использует MIN.
ВЫБЕРИТЕ МИН. (Итого) ИЗ заказа
Этот оператор возвращает значение 10.Это наименьшее значение в вашей таблице в столбце Всего. Как и функция MAX, вы также можете использовать предложение WHERE для фильтрации вашего набора записей. Следующий код включает предложение WHERE.
ВЫБЕРИТЕ МИН. (Итого) ИЗ заказа
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Возвращаемое значение для этого оператора — 20, поскольку запись с общим значением 10 отфильтровывается с использованием предложения WHERE.
Комбинирование функций
При работе с операторами и функциями SQL вы не ограничены использованием одной функции.Вы можете их комбинировать. Например, предположим, что вы хотите получить СУММУ всех ваших заказов, но вы также хотите знать, сколько у вас заказов. Вы можете написать два отдельных оператора, чтобы получать каждое значение отдельно. Однако это не способ писать SQL для повышения производительности. Всякий раз, когда вы пишете свои операторы SQL, вы должны писать с учетом производительности. Выполнение двух отдельных операторов SQL, вероятно, не повредит производительности, если ваше приложение работает всего несколько человек, но что произойдет, если у вас есть 100, 1000 или 10000 человек, запускающих ваше приложение одновременно? Когда у вас есть тысячи людей, использующих ваше приложение одновременно, написание двух отдельных операторов SQL имеет огромное значение, если вы можете просто объединить их и написать один.
Заглянем в таблицу заказов.
OrderId | CustomerId | Итого | Дата заказа |
1 | 321 | 10 | 1/2/2014 |
2 | 455 | 40 | 02.03.2014 |
3 | 456 | 20 | 10.03.2014 |
Обратите внимание, что есть три записи, но у вас, вероятно, будут тысячи записей в реальной таблице.Вы можете суммировать заказы для всей таблицы, но большинство приложений суммируют итоги, используя диапазон дат.
Во-первых, давайте суммируем итоги без предложения WHERE и используем предложение COUNT для определения количества записей.
ВЫБРАТЬ СУММУ (Итого), КОЛИЧЕСТВО (Итого) ИЗ заказов
Приведенный выше оператор возвращает суммарное значение функции SUM, равное 70, а функция COUNT возвращает 3. В большинстве случаев вам понадобится предложение WHERE в вашем операторе SQL, даже если оно суммирует несколько записей.Например, следующий оператор SQL использует то же предложение WHERE, что и другие наши операторы.
ВЫБРАТЬ СУММУ (Итого), КОЛИЧЕСТВО (Итого) ИЗ заказов
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Приведенный выше оператор возвращает суммарное значение 60 и счетчик 2, поскольку набор записей ограничен только значениями в марте.
Вы даже можете добавить функцию AVG в приведенный выше оператор. Например, следующий оператор SQL получает общую сумму за март, количество ваших заказов и среднюю сумму на заказ.
ВЫБРАТЬ СУММУ (Итого), СЧЕТЧИК (Итого), СРЕДНЕЕ (Итого) ИЗ заказов
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Приведенный выше оператор вернет 60, 2 и 30 соответственно.
Последний комментарий к предыдущим операторам SQL. Вы можете использовать псевдонимы столбцов, чтобы возвращать имя столбца с вашими функциями. Если вы не используете псевдонимы, SQL автоматически назначит имя столбца, например «Столбец1», для набора сводных данных. Вы можете перезаписать это значение по умолчанию, указав имя столбца, которое также называется псевдонимом.Используя недавний пример, имена столбцов настраиваются для возвращаемого набора данных в приведенном ниже операторе SQL.
ВЫБЕРИТЕ СУММУ (Итого) как Суммарный итог, СЧЁТ (Итого) как Подсчетное количество, СРЕДНЕЕ (Итого) как Среднее Итоговое из заказов
ГДЕ ДАТА ЗАКАЗА МЕЖДУ 01.03.2014 И 31.03.2014
Теперь вместо того, чтобы просто возвращать случайные имена столбцов, вы получаете псевдонимы имен столбцов с соответствующими значениями. Вы можете использовать псевдонимы с любым столбцом в таблице.
Есть несколько других функций, которые вы можете использовать с SQL.Формат и написание на разных платформах различаются. Некоторые другие примеры включают ABS, RAND, ROUND, UPPER, LOWER, LTRIM, RTRIM и CONVERT. Вы даже можете создавать свои собственные функции, когда освоите язык SQL.
Работа с функциями может сократить время, необходимое для кодирования ваших процедур SQL, и упростить создание отчетов, когда вам поручаются эти задачи.
.