Учебники

MS Access — группировка данных

В этой главе мы расскажем, как рассчитать группу записей в Access. Мы создали поле, которое вычисляет строку за строкой или запись за записью, чтобы создать итоговое поле или поле промежуточных итогов, но что, если бы мы хотели вычислять по группам записей, а не по отдельным. Мы можем сделать это, создав так называемый совокупный запрос .

Совокупный запрос

Совокупный запрос, также известный как итоговый или сводный запрос, представляет собой сумму, массу или групповые данные. Это может быть общая или полная сумма или группа или подмножество записей. Агрегированные запросы могут выполнять ряд операций. Вот простая таблица, в которой перечислены некоторые способы суммирования по группе записей.

S.No Агрегатные функции и описание
1.

сумма

Добавляет значения поля

2.

в среднем

Среднее значение поля

3.

Min

Минимальное (минимальное) значение поля

4.

Максимум

Наибольшее (максимальное) значение поля

5.

подсчитывать

Количество значений (записей)

6.

StDev

Стандартное отклонение значений полей, включая поля даты / времени

7.

Var

Дисперсия значений поля, включая дату / время

сумма

Добавляет значения поля

в среднем

Среднее значение поля

Min

Минимальное (минимальное) значение поля

Максимум

Наибольшее (максимальное) значение поля

подсчитывать

Количество значений (записей)

StDev

Стандартное отклонение значений полей, включая поля даты / времени

Var

Дисперсия значений поля, включая дату / время

Позвольте нам открыть вашу базу данных и перейти к Query Design и включить следующие таблицы —

TblBooks

Закройте это диалоговое окно, и будут показаны следующие два поля, как показано в сетке запросов на следующем снимке экрана.

Скриншот

Это простой запрос, и мы отображаем только два поля — название книги и количество, и когда мы запускаем его, мы видим каждый отдельный заказ в нашей базе данных.

Давайте теперь запустим этот запрос, и вы увидите следующие результаты.

Индивидуальный заказ

Вот почему названия книг повторяются. Отдельные заказы были размещены здесь для каждой из этих книг, и они были заказаны в разных количествах. Предположим, мы хотим увидеть сводку только того названия книги, которое было указано только один раз. А затем сумма количества, указанного рядом с ним.

Теперь перейдем к представлению «Дизайн» и на вкладке «Дизайн» вы увидите символ Sigma. Это ваша общая кнопка.

Скриншот

Щелкните по символу сигмы, который откроет другую строку под вашим полем в строке таблицы, и отсюда вы можете указать, как вы группируете этот запрос.

Группа по

Теперь мы сгруппируемся по названию книги, а также суммируем поле количества.

Если мы щелкаем по группам по областям и далее нажимаем на раскрывающееся меню, все опции будут перечислены внизу. В этом случае мы выберем опцию Сумма и затем запустим ваш запрос.

сумма

Теперь вы можете видеть каждую отдельную книгу, а также все отдельные заказы, отображаемые рядом с названием книги.

Индивидуальный

Конкатенация в Access

Мы изучили процесс нормализации, хранения информации в отдельных полях. Иногда вы хотите видеть или просматривать данные вместе, например, объединяя поля имени и фамилии в одно поле. Вы можете отобразить эту информацию вместе, создав вычисляемое поле, объединяющее одну или несколько строк. Вы также можете добавить другие символы, такие как запятая или точка, которую вы можете захотеть.

  • Для объединения в Access есть два разных оператора, которые можно использовать с амперсандом (&) и знаком плюс (+) .

  • Амперсанд объединит две строки в одну, тогда как знак плюс объединит две строки и распространит значения NULL, например, если одно значение равно NULL, все выражение будет равно нулю.

Для объединения в Access есть два разных оператора, которые можно использовать с амперсандом (&) и знаком плюс (+) .

Амперсанд объединит две строки в одну, тогда как знак плюс объединит две строки и распространит значения NULL, например, если одно значение равно NULL, все выражение будет равно нулю.

пример

Давайте рассмотрим простой пример, чтобы понять процесс создания нового запроса с использованием дизайна запроса. Это будет очень простой запрос, который извлекает информацию из таблицы наших клиентов.

Теперь давайте добавим таблицу tblCustomers, чтобы закрыть диалоговое окно отображения таблицы. Мы попробуем объединить некоторые простые именованные поля.

TblCustomers

Давайте теперь добавим поля имени и фамилии и запустим запрос.

Как видите, имя и фамилия разделены на два разных поля.

Имя таблицы

Нам нужно отобразить эту информацию вместе.

Информация вместе

Вернитесь в представление конструктора и в третьем поле создайте новое поле с именем полное имя . Теперь добавьте полное имя и введите выражение, объединяющее эти два поля.

Дизайн Посмотреть полное имя

Давайте запустим запрос, и вы увидите новое вычисляемое поле.

Расчетное поле

Он может объединять информацию из этих двух полей вместе, но не совсем так, как мы этого хотим. Он запускает весь этот текст вместе, потому что он работает так, как мы его просили. Теперь нам нужно попросить Access добавить пробел между информацией из этих двух полей.

Давайте теперь вернемся к представлению «Дизайн» и добавим еще один раздел к этому выражению.

Дизайн Посмотреть полное имя

Добавьте пробел внутри кавычек и еще один амперсанд. Это заставляет Access брать информацию из этого поля имени; добавьте его с пробелом, а затем добавьте информацию из поля фамилии в самом конце. Теперь запустите запрос еще раз, и вы увидите следующие результаты.