Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Запрос на выборку данных




Для создания gростого запросана выборку данных, т.е. выбора только для просмотра необходимых полей таблицы или полей из совокупности связанных таблиц без обработки выбранной информации, следует в начальном окне БД (см. рис. 4) выбрать режим Запросы, нажав мышью на корешок соответствующей вкладки. Затем выполнить последовательно команды Создать/Простой запрос (см. рис. 4, 13). После этого включается Мастер, формирующий запрос в автоматическом режиме в ходе диалога. В результате сначала на экране появляется диалоговое окно с двумя подокнами: Таблицы/запросы и Выбранные поля (см. рис. 14).

Выбрав в окне Таблицы/запросы нужную таблицу, можно отобрать в ней для просмотра нужные поля, нажав после выбора мышью соответствующего поля таблицы в окне Доступные поля кнопку правее окна «>», либо сразу все поля таблицы, нажав кнопку «>>». Если же необходимо отобрать для просмотра поля сразу из нескольких связанных между собой таблиц, то после выбора полей из первой таблицы переходят в окне Таблицы/запросы к другой таблице и аналогичным образом добавляют нужные для просмотра поля.

После выбора полей таблицы Мастер Простой запрос открывает диалоговое окно, где необходимо задать имя для сформированного запроса и выбрать режим подробности выборки: подробный (вывод всех полей для каждой записи), что приводит к окончанию работы Мастера, либо итоговый для неповторяющихся записей, что соответствует т.н. Итоговому запросу, который требует дальнейшего диалога и будет рассмотрен в пособии ниже.

 
 

 

Рис. 14. Диалоговое окно создания Простого запроса на выборку

Создайте с помощью Мастера Простой запрос запрос на основе таблицы «Клиенты» с выбором всех полей для просмотра. Сохраните запрос под именем «Клиенты».

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

Другие запросы, создаваемые с помощью Мастеров: Перекрестный, Повторяющиеся записи, Записи без подчиненных, имеют более сложную структуру и будут разбираться в пособии в дальнейшем, после подробного рассмотрения основного режима формирования запросов – режима Конструктор. Именно в режиме Конструктор можно сформировать тот запрос, который вам нужен, поскольку рассмотренный выше пример использования Мастера не способен провести даже такую простую операцию обработки данных, как сортировка записей в таблице запроса.

 

4. 2. Создание запроса в режиме Конструктор

 

Для создания запроса в режиме Конструктор после выбора таблиц для запроса в окне Добавление таблицы щелчком мыши по кнопке Добавить (см. рис. 15) на экране появляется диалоговое окно Запрос на выборку, состоящее из двух частей (см. рис. 16): верхней, где представлены таблицы, на основе которых строится запрос, и нижней, где выбираются поля из таблиц и где, собственно говоря, непосредственно формируется запрос.

 
 

Рис. 15. Окно выбора таблиц из БД для запроса

 
 

Рис. 16. Окно организации запроса в режиме Конструктор

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

Нижняя часть диалогового окна Запрос на выборку называется бланком запроса по образцу, иначе QBE-бланком или QBE-областью. При этом количество строк в QBE-бланке может меняться в зависимости от вида запроса. На рис. 16 представлен бланк запроса по образцу QBE, содержащий строки:

Поле – для запрашиваемых полей;

Имя таблицы – для вывода имени таблицы, из которой выбирается поле;

Сортировка – для проведения сортировки по этим полям;

Вывод на экран – для вывода или нет выбранных запросом полей на экран;

Условие отбора – для ввода условий на выбор записей в соответствии с заданными условиями, причем условия по отдельным полям в этой строке соединяются операцией «и» (все условие верно только, если все составляющие его условия верны);

Или – для ввода условий, которые соединяются с условием в вышерасположенной строке Условие отбора по принципу «или» (все условие верно, если хотя бы одно из составляющих его условий верно).

Для создания простого запроса на просмотр таблицы с проведением сортировки ее записей добавьте в диалоговое окно Запрос на выборку таблицу «Товары». Перенесите затем мышью в QBE-область последовательно поля: «Товар», «Количество», «Стоимость», «Описание», «Изображение», «Дата поступления». С помощью раскрывающегося спи­ска в строке QBE-бланка Сортировка для поля "Товар" установите режим сор­тировки По возрастанию, а для поля «Стоимость» – По убыванию (см. рис. 16).

В построенном варианте запроса записи будут отсортированы в алфавитном порядке по названию товаров, а в пределах каждого товара – в убывающем порядке его стоимости.

Для подавления вывода на экран отдельных полей запроса необходимо в строке QBE-бланка Вывод на экран с помощью мыши произвести сброс флажка (отметка внутри квадрата пропадет). Поскольку данные с типами Поле MEMO и Поле объекта OLE не отображаются в таблицах запросов, то нашем случае вывод этих полей всегда будет подавлен (просмотреть такие поля можно только построив на основе полученного запроса новый объект БД Форма, см. подробнее раздел 5 пособия).

При построении запросов следует также иметь в виду, что Access не проводит сорти­ровку по полям с типами данных Поле MEMO и Поле объекта OLE.

Для выполнения запроса щелкните мышью кнопку Запуск в пиктографическом меню. В результате на экране в виде таблицы отобразится результат запроса. Сохраните запрос под именем «Товары с сортировкой».

 
 

Рис. 17. Бланк запроса на выборку с условием и сортировкой

 
 

Рис. 18. Окно Построитель выражений

Составим теперь список контрактов, заключенных с клиентами после 1 марта 2001 года. Для подготовки такого запроса с условием для выборки записей, действуя аналогичным предыдущему случаю образом, выберите в главном окне БД объект Запросы и вы­полните затем последовательно команды Создать/Конструктор. В окно Запрос на 4) выб ратбавьте таблицу «Контракты», перенесите мышью из списка полей выбранной таблицы в область спецификации запроса поля таблицы «Товар», «Количество» и «Дата» в нужной последовательности.

В поле запроса «Товар» задайте режим сортировки. В поле запроса «Дата» в строке Условие отбора задайте отбор по критерию (см. рис. 17).

>1.03.01

Выполните запрос щелчком мыши по кнопке Запуск на панели пиктографического меню. Сохраните запрос под именем «Контракты после 1 марта». Сохраненным запросом можно воспользоваться в любой момент и по­сле внесения изменений и дополнений в исходную таблицу.

В качестве примера отбора данных по более сложному условию рассмотрим запрос на полу­чение сведений о контрактах, заключенных клиентами за определенный промежуток времени, например с 15.03.01 по 23.05.01.

Постройте такой запрос на базе таблицы «Контракты». Включите в запрос поля «Дата», «Товар», «Клиент». Для поля «Дата» задайте режим сортировки По воз­растанию и условие отбора:




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 637; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.