Узнайте об использовании Microsoft Access GROUP BY Query

Вы можете использовать базовые SQL-запросы для извлечения данных из базы данных, но это часто не обеспечивает достаточного интеллекта для удовлетворения бизнес-требований. SQL также предоставляет вам возможность группировать результаты запроса на основе атрибутов уровня строки, чтобы применять агрегатные функции с помощью предложения GROUP BY. Рассмотрим, например, таблицу данных заказа, состоящую из следующих атрибутов:

  • Номер заказа — Числовое значение, однозначно идентифицирующее каждый заказ. Это поле является первичным ключом для базы данных.
  • Salesperson — Текстовое значение, содержащее имя продавца, который продал продукты. Это поле является внешним ключом другой таблицы, содержащей информацию о персонале.
  • Пользовательский ИД — Числовое значение, соответствующее номеру счета клиента. Это поле также является внешним ключом, ссылающимся на таблицу, содержащую информацию об учетной записи клиента.
  • доходов — Числовое значение, соответствующее долларовой сумме продажи.

Использование GROUP BY

Когда приходит время проводить проверки производительности для продавцов, таблица «Заказы» содержит ценную информацию, которая может быть использована для этого обзора. При оценке Джима вы можете, например, написать простой запрос, который извлекает все записи о продажах Джима:

 ВЫБРАТЬ *
ОТ заказов
ГДЕ продавец любит "Джим"

Это извлечет все записи из базы данных, соответствующие продажам, сделанным Джимом:

 OrderID Менеджер по продажам CustomerID Доход
12482 Джим 182 40000
12488 Джим 219 25000
12519 Джим 137 85000
12602 Джим 182 10000
12741 Джим 155 90000

Вы можете просмотреть эту информацию и выполнить некоторые ручные вычисления, чтобы получить статистику производительности, но это было бы утомительным заданием, которое вам пришлось бы повторять для каждого продавца в компании. Вместо этого вы можете заменить эту работу одним запросом GROUP BY, который рассчитывает статистику для каждого продавца в компании. Вы просто пишете запрос и указываете, что база данных должна группировать результаты на основе поля «Продавец». Затем вы можете использовать любую из агрегатных функций SQL для вычисления результатов.

Вот пример. Если вы выполнили следующую инструкцию SQL:

ВЫБЕРИТЕ продавец, СУММА (доход) AS "Итого", MIN (доход) AS "Самый маленький", MAX (доход) AS "Самый большой", AVG (доход) AS "Средний", COUNT (доход) AS "Число"
ОТ заказов
GROUP BY продавец

Вы получите следующие результаты:

Общее количество самых маленьких продавцов
Джим 250000 10000 90000 50000 5
Мэри 342000 24000 102000 57000 6
Боб 118000 4000 36000 39333 3

Как видите, эта мощная функция позволяет генерировать небольшие отчеты из SQL-запроса, предоставляя ценную деловую информацию менеджеру, проводящему анализ производительности. Предложение GROUP BY часто используется в базах данных для этой цели и является ценным инструментом в арсенале DBA.

Ссылка на основную публикацию