Поле        Продавец        Объем операции Номер записи
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

-------------------------------------------------------------------------------------------------------------

Функция Group by          Sum (Сумма)       Count (Количество)

(Группировка)

Условия   "Фунт"

отбора

Функция Count в поле Номер записи позволяет определить число записей в группе.

- Какой оборот дал каждый клиент?

Поле      Продавец  Объем операций Номер записи

---------------------------------------------------------------------------------

Функция    Count    Sum                      Group by

Функция Count в поле Продавец позволяет оценить в колонке Со unt_Продавец количество покупок для указанного объема продаж.

- Каков полный объем продаж?

Поле      Продавец    Объем операций Номер записи

------------------------------------------------------------------------------------

Функция  Count        Sum                    Count

На листе данных в полях Со unt_Продавец и Со unt_Номер запи­си индицируется общее число торговых операций.

ЗАПРОСЫ К НЕСКОЛЬКИМ ТАБЛИЦАМ

 

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

Таблица                  Поле                        Поле

Адрес                       Фамилия                 Телефон

Торговля                  Продавец                Объем операций

Цель данного запроса - получение сведений об объеме продаж и о номерах телефонов клиентов, участвующих в операциях.

Для реализации этого запроса необходимо создать небольшую таблицу с именем Адреса с полями: Номер записи (Счетчик), Фамилия (Текстовый-15 символов), Адрес (Текстовый -10), Телефон (Текстовый -8) и ввести данные: 1. Шариков 12/15-415 23-34-56; 2.Фунт 40/02-15 58-12-56; 3. Корейко 07/01-48 51-20-52; 4. Бендер 28/06-21 32-56-86; 5. Воробьянинов 07/03-38 57-89-23.

Модель реляционной базы данных работает правильно лишь в том случае, если корректно установлено отношение между полями таблиц базы. Обязательным условием установки связи между таблицами явля­ется наличие двух одинаковых полей.

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

Для установки связи между полями Номер записи таблиц Адреса и Торговля необходимо выполнить следующие действия:

- Закрыть все таблицы, между которыми существует связь.

- Активизировать команду Схема данных в меню Сервис или на­жать соответствующую кнопку на панели инструментов.

- Если вместо диалогового окна Добавление таблицы откроется окно Схема данных (это может произойти при наличии связей между таблицами, установленных ранее), необходимо выбрать в меню Связи команду Добавить таблицу или нажать соответствующую кнопку на панели инструментов.

- Выбрать таблицу Адреса в списке, расположенном на вкладке Таблицы или Таблицы и запросы, и нажать кнопку Добавить. Затем до­бавить таблицу Торговля и нажать кнопку Закрыть. В окне Схема дан­ных появятся два небольших окна со списками полей таблиц Адреса и Торговля.

- С помощью мыши перетащить поле Номер записи из списка по­лей таблицы Адреса к соответствующему полю таблицы Торговля. Это поле является ключевым (выделено в списке жирным шрифтом) и при­надлежит к главной таблице. Таблица Торговля в данном случае яв­ляется подчиненной.

- На экране появится диалоговое окно Связи, в котором отобра­жаются имена связываемых полей обеих таблиц.

При необходимости их можно изменить.

- Активизировать опцию Обеспечение целостности данных. При этом будет установлено отношение One-To-Many (один ко многим), что отразится в области Тип отношения. Это означает, что одной за­писи главной таблицы Адреса могут быть поставлены в соответствие несколько записей подчиненной таблицы Торговля. Такое отношение является наиболее распространенным в реляционных базах данных.

- В заключение нажать кнопку Создать. В окне Связи программа графически обозначит связь между полями таблиц.

Запрос для таблиц, между которыми установлена связь, созда­ется следующим образом:

- Нажать кнопку Создать на вкладке Запросы окна базы данных.

- В окне Новый запрос выбрать конструктор.

- Выполнить двойной щелчок на имени главной таблицы, Адре­са в диалоговом окне Добавление таблицы, вследствие чего она бу­дет помещена в QBE-область окна Запрос на выборку.

- Повторить эту операцию для подчиненной таблицы Торговля.

- Закрыть диалоговое окно Добавление таблицы посредством кнопки Закрыть.

    - Включить в запрос поля Фамилия, Телефон, Продавец и Объем операции.

- Присвоить запросу имя Запрос Адреса_Торговля.

- Запустить запрос. Благодаря однозначности отношения между полями таблиц осуществляется корректное сопоставление записей, идентифицируемых посредством поля Номер записи.

 

СОЗДАНИЕ ЗАПРОСА С ПОМОЩЬЮ МАСТЕРА

 

Рассмотрим работу мастера по созданию запросов Простой запрос, и со­ставим запрос Операции с клиентами, предоставляющий инфор­мацию о сумме продаж (поле Объем операций таблицы Торговля}, произведенных про­давцами (поле Продавец таблицы Торговля), клиентам, перечисленным в поле Фамилия таблицы Адреса.

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

В первом диалоговом окне мастера выбрать в списке Таблицы/Запросы таблицу, поля которой будут анализироваться при выполнении запроса (Ад­реса). В списке Доступные поля отметить поле Фамилия и пере­нести его в список Выбранные поля. Те же действия выполнить для таблицы Торговля и полей Продавец и Объем операции. В завершение нажать кнопку. Далее.

 В следующем окне мастера можно задать подробный (вывод каждого поля каждой записи) или итоговый (суммирова­ние полей  запросом). Остановимся на первом варианте.

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

 

СОЗДАНИЕ ЗАПРОСОВ ДРУГИХ ТИПОВ

 

В Access существуют и запросы других типов: запросы действия, пара­метрические за­просы и перекрестные запросы.

 

Запрос на изменение

 

Запросы на изменение используют для изменения и переноса данных в таблицах, для обновления, добавления и удаления групп записей, а также для создания новой таблицы на основе одной или нескольких таблиц. Различают че­тыре типа запросов на изменение: запрос на добавление, запрос на удаление, за­прос на обновление и запрос на создание таблицы,

Примечание:В окне базы данных перед именем запроса на изменение Access устанавливает вос­клицательный знак (!).

 

Запрос на добавление

 

С помощью запроса на добавление записи из одной таблицы (все или отобранные запросом) можно поместить в конец другой таблицы. Обе таблицы могут нахо­диться как в одной, так и в разных базах данных.

 Если необходимо добавить записи к таблице из другой базы данных, сначала сле­дует присоединить таблицу-источник к базе, содержащей целевую таблицу, с по­мощью команды Связь с таблицами из подменю Внеш­ние данные меню Файл. Для отбора добавляемых записей нужно составить за­прос на выборку. Затем надлежит выполнить составленный запрос и оценить ре­зультат, переключившись в режим таблицы с помощью команды Объекты базы данных из меню Вид. После этого необходимо вернуться в режим конструк­тора и активизировать команду Добавление из меню Запрос.

В открывающемся при этом диалоговом окне Добавление необходимо задать в поле Имя таблицы имя таблицы, к которой нужно присоеди­нить дан­ные из ре­зультирующего набора за­писей запроса. Закрытие диалогового окна посредством кнопки ОК приводит к тому, что Access добавляет в бланк за­проса строку Добавление. В эту строку автоматически (или вручную) вставля­ются имена тех полей целе­вой таблицы, которые совпадают с именами полей за­проса. Далее следует выпол­нить запрос, нажав кнопку Запуск на панели инстру­ментов. В специальном диалого­вом окне Access укажет, сколько записей будет добавлено к целевой таблице, и по­требует подтвердить выполнение этой опера­ции.

 

Запрос на удаление

 

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

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

После этого надлежит активизировать в меню Запрос команду Удаление.  Access добавит в бланк запроса строку Удаление и введет в ее ячейки значение Усло­вие. Это означает, что пользователь может установить дополни­тельные критерии отбо­ра. Далее следует выполнить запрос, нажав кнопку с изо­браже­нием восклица­тельного знака на панели инструментов. В специ­альном диалоговом окне Access укажет, сколько записей удаля­ется из таблицы, и потре­бует подтвердить удаление.

 

Запрос на обновление

 

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

 

Запрос на создание таблицы

 

На основе результирующего набора записей запроса можно построить но­вую таблицу с помощью запроса на создание таб­лицы. Такие запросы обычно при­меняют для архивирования старых записей или для сохранения резервных копий таблиц.

Сначала необходимо подготовить запрос на выборку и полу­чить динами­че­ский набор данных Recordset, заодно проверив корректность запроса. Если ре­зуль­тирующий набор записей со­ответствует поставленным требованиям, необ­ходимо вернуться в режим конструкто­ра и в меню Запрос выбрать команду Соз­дание таблицы. Access откроет диалоговое окно Создание таблицы, в которое следует ввести имя новой табли­цы. Далее нужно выполнить запрос, нажав кнопку с восклица­тельным знаком на панели инструментов. В специаль­ном диало­говом окне Access укажет, сколько записей добавляется в новую таб­лицу, и потре­бует подтвердить выполнение этой операции.

 

Дата: 2018-12-28, просмотров: 215.