Создание запроса на выборку в access 2007

Создание запроса на выборку в access 2007

Учебная дисциплина
Информатика и компьютерная техника
Модуль 2. Офисные прикладные программы Microsoft Office 2007

2.4. Microsoft Access 2007

2.4.5. Создание запросов и поиск информации в базе данных

В СУБД Access 2007 можно создавать queries для отображения требуемых полей из записей одной или нескольких таблиц.

В СУБД Access 2007 применяются различные типы запросов: на выборку, на обновление, на добавление, на удаление, перекрестный query, выполнение вычислений, создание таблиц. Наиболее распространенным является query на выборку. Применяются два типа запросов: query по образцу (QBE) и query на основе структурированного языка запросов (SQL).

Запросы на выборку используются для отбора требуемой пользователю информации, содержащейся в нескольких таблицах. Они создаются только для связанных таблиц. Queries могут основываться как на нескольких таблицах, так и существующих запросах. СУБД Access 2007 включает такие средства создания запросов, как Мастер и Конструктор.

Кроме того, в СУБД Access 2007 существует множество средств для поиска и отображения информации, которая хранится в базе данных. Данные в таблицах можно отсортировать на основе любого поля или комбинации полей. Для извлечения из базы данных необходимых записей можно отфильтровать таблицу, применив средства фильтрации.

На скриншоте (рисунок 1) средства сортировки и фильтрации выделены скругленным прямоугольником красного цвета.

Рассмотрим создание запроса на выборку с помощью Конструктора

Для создания нового пустого запроса в режиме конструктора надо щелкнуть на пиктограмме Конструктор запросов (рисунок 2).

Откроется активное окно диалога Добавление таблицы (рисунок 3) на фоне неактивного окна «Запрос1». В этом окне можно выбрать таблицы и queries для создания новых запросов.

В окне Добавление таблицы следует выбрать несколько таблиц из представленного списка таблиц, на основе которых будет проводиться выбор данных, и щелкнуть на кнопке Добавить. После этого закрыть окно Добавление таблицы, а окно «Запрос1» станет активным (рисунок 4).

Окно Конструктора состоит из двух частей – верхней и нижней. В верхней части окна размещается схема данных запроса, которая содержит список связанных таблиц. В нижней части окна находится Бланк построения запроса QBE, в котором каждая строка выполняет определенную функцию.

Переместим имена полей с таблиц-источников в Бланк. Из таблицы Группы студентов переместим поле Название в первое поле Бланка, из таблицы Студенты переместим поле Фамилии во второе поле, а из таблицы Успеваемость переместим поле Оценка в третье поле и из таблицы Дисциплины переместим поле Название в четвертое поле Бланка запросов.

При необходимости можно задать принцип сортировки (по возрастанию или по убыванию) результатов запроса. В строке "Вывод на экран" автоматически устанавливается флажок просмотра информации.

Условия ограниченного поиска или критерий поиска информации вводится в строке "Условия" отбора и строке "Или". Например, введем критерий поиска — "5/A" в строке "Условия" для поля Оценка. В этом случае в результате выполнения запроса на экране будут отображаться все фамилии студентов, которые получили оценку 5/A (рисунок. 5).

Далее надо закрыть окно запроса Запрос1, появится окно диалога Сохранить, ответить — Да и ввести имя запроса, например "Успеваемость студентов". Для запуска запроса дважды щелкнем на query "Успеваемость студентов", откроется таблица с результатами выполненного запроса (рис. 6).

Далее создаем параметрический query или query с параметрами. Создаем этот query также как и предыдущий, в режиме конструктора, но только в строке Условия отбора для поля Фамилия введем условие отбора в виде приглашения в квадратных скобках, например [Введите фамилию]. В этом случае в результате выполнения запроса на экране будет отображаться фамилия студента и все дисциплины, по которым он получил оценку.

Закрыть окно запроса на выборку. На вопрос о сохранении изменения ответить — Да и ввести имя запроса, например "Параметрический query". Запустим Параметрический query, дважды щелкнув на нем. В открывшемся на экране окне диалога «Введите значение параметра» надо ввести фамилию студента, информацию об успеваемости которого необходимо получить (рис. 8).

Затем надо щелкнуть на кнопке ОК, откроется таблица с результатами выполненного запроса (рис. 8).

В некоторых случаях для создания запросов можно использовать Мастер запросов. После создания запросов на выборку информации из БД Access 2007 можно приступать к формированию форм.

Copyright

© Обучение в интернет, .
Обратная связь

Название работы: MS Access 2007: Создание запросов

Категория: Лабораторная работа

Предметная область: Информатика, кибернетика и программирование

Описание: Для вывода на экран БЛАНКА ЗАПРОСА необходимо: вкладка Создание группа команд Другие Конструктор запросов; в появившемся диалоговом окне Добавление таблицы выделите удерживая нажатой левую кнопку мыши все таблицы; щелкните по кнопкам Добавить и Закрыть; на экран будет выведено окно Конструктора запросов. В нижней панели пустой бланк запроса. Назначение строк бланка запроса: Поле Указываются имена полей участвующих в запросе Имя таблицы Автоматически выводятся имена таблиц соответствующих выбранным полям Групповая операция.

Дата добавления: 2013-10-26

Размер файла: 351.77 KB

Работу скачали: 183 чел.

Лабораторная работа №4 «Запросы на выборку»

Лабораторная работа №4_часть 1

MS Access 2007: Создание запросов

Запрос — это требование на отбор данных, хранящихся в таблицах, или требование на выполнение определенных действий с данными. QBE -запросы ( QBE – Query By Example – запросы по образцу) это:

  1. запрос на выборку;
  2. запрос на создание таблицы;
  3. запросы на обновление, добавление, удаление записей;
  4. запрос с параметрами;
  5. перекрестный запрос.

Для вывода на экран БЛАНКА ЗАПРОСА необходимо:

  1. вкладка Создание — группа команд Другие – Конструктор запросов ;
Читайте также:  Iptv приставка mag 250 настройка

  1. в появившемся диалоговом окне Добавление таблицы выделите (удерживая нажатой левую кнопку мыши) все таблицы;
  2. щелкните по кнопкам Добавить и Закрыть ;
  1. на экран будет выведено окно Конструктора запросов . На верхней панели Конструктора запросов отображены таблицы базы данных с установленными связями. В нижней панели – пустой бланк запроса.

Назначение строк бланка запроса:

Указываются имена полей, участвующих в запросе

Автоматически выводятся имена таблиц, соответствующих выбранным полям

Появляется после нажатия кнопки . Для объединения записей из связанных таблиц в группы (чтобы в результирующей таблице запроса не было повторяющихся записей)

Вывод инструкций сортировки записей

Определяет, будет ли отражено поле в результирующей таблице

Содержит первое условие, ограничивающее набор записей

Другие условия на ограничения набора записей

Шаблоны, используемые при формировании условий отбора в запросах:

Соответствует любому количеству любых символов, и может быть использован в любом месте текстовой строки

ст* — находит стол , стул , стакан и т.д.

*ка — находит лампочка , папка , краска и т.д.

Соответствует любому одиночному символу

л?па — находит лапа , липа и лупа и т.д.

224-??-45 — находит 224-58-45 ,
224-15-45 и т.д.

  1. Создание запросов на выборку

Для формирования запроса необходимо заполнить бланк запроса (вывод на экран бланка запроса см. выше).

В строку Поле выводятся нужные для запроса поля из таблиц. Чтобы поле из таблицы, расположенной на верхней панели Конструктора запросов перенести в строку Поле бланка запроса, необходимо выполнить двойной щелчок мышью по нужному полю в таблице .

Строка Имя таблицы заполняется автоматически.

В строку Условие отбора (в соответствующее поле) вводятся критерии отбора записей.

  1. Составьте запрос на получение сведений о туристах (Фамилия, Адрес, Телефон, № путевки), выезжавших в Польшу в 2003 году (для указания даты используйте шаблон).

Пример выполнения запроса:

  1. Вкладка Создание – группа команд Другие – Конструктор запросов – выделите все таблицы – щелкните по кнопкам Добавить , Закрыть .

На экране появится окно Конструктора запросов с пустым бланком запроса.

Формируем бланк запроса:

  1. Из таблиц, расположенных вверху окна, двойным щелчком мыши переносим в строку Поле: из таблицы Туристы — Фамилию , Адрес_внутри_города , Телефон ; из таблицы Путевки – Номер путевки , Дата заезда ; из таблицы Страны мира – Название страны (при этом заполнение строки Имя таблицы в бланке запроса будет проходить автоматически).
  1. Для поля Название страны щелкните мышью в строке Условие отбора бланка запроса и введите с клавиатуры Польша .
  2. Для поля ДатаЗаезда щелкните мышью в строке Условие отбора бланка запроса и введите шаблон *.*.2003 .

Сформированный бланк запроса будет выглядеть следующим образом:

  1. Запустите запрос на выполнение: вкладка Конструктор – группа команд Результаты – Выполнить .
  1. Просмотрите результат выполнения запроса.

  1. Щёлкните правой кнопкой мыши по корешку Запрос1 . Выберите Сохранить и в появившемся диалоговом окне Сохранение введите Польша-2003 . Закройте запрос.

  1. Составьте запрос на получение сведений о путевках (№ путевки, Дата заезда, Цена, Название страны), реализованных турагентством «Нева» в 2002 году (для указания даты используйте шаблон).

Результат выполнения запроса будет следующим:

Уберите из результата выполнения запроса поле Турагентство .

  1. вернитесь в бланк запроса, щёлкнув на вкладке Главная – в группе команд Режим — по кнопке Режимы ;
  1. в строке бланка Вывод на экран снимите флажок (удалите щелчком галочку) в столбце поля Турагентство .

Бланк запроса будет выглядеть следующим образом:

  1. Запустите запрос на выполнение: вкладка Конструктор – группа команд Результаты – Выполнить .
  1. Просмотрите результат выполнения запроса – поля Турагентство в результирующей таблице нет.

В динамической таблице, являющейся результатом выполнения запроса, есть повторяющиеся строки ( Италия, 15.07.2002 ). Для удаления из результата выполнения запроса повторяющихся записей:

  1. вернитесь в бланк запроса;
  1. на вкладке Конструктор – группа команд Показать или скрыть — щёлкните по кнопке . В бланке запроса появится новая строка Групповые операции ;
  2. запустите запрос на выполнение;
  3. сохраните и закройте запрос.
  1. Составьте запрос на получение сведений о путевках (№ путевки, Цена, Название страны), цены на которые были равны 700 руб. или 1990 руб.

При заполнении бланка запроса помимо строки Условие отбора ( для поля Цена ) используйте еще и строку ИЛИ бланка запроса.

. Не забудьте убрать из результата запроса повторяющиеся строки.

Сохраните и закройте запрос.

  1. Составьте запрос на получение сведений о туристах (Фамилия, Адрес, № путевки, Цена), купивших путевки по цене, превышающей 1000 рублей.

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

  1. Составьте запрос на получение сведений о достопримечательностях (Название объекта, Описание, Название страны, Дата заезда), с которыми ознакомились туристы в 2002 году (для указания даты используйте шаблон).

ВАЖНО!! Так как нас интересует временной диапазон в целом ( с января по декабрь 2002 года ) , без разбивки на конкретные даты , то в строке Группировка для поля ДатаЗаезда выберите из раскрывающегося списка — Условие .

Результат выполнения запроса:

  1. Составьте запрос на получение сведений (Турагентство, Адрес и Телефон турагентства, Дата заезда, Цена) о том, у каких турагентств и по каким ценам можно было приобрести путевку и посетить Эйфелеву башню. Поле Название объекта не включайте в результат выполнения запроса.
  2. Составьте запрос на получение сведений о туристах (Фамилия, Имя, Отчество, Название страны), выезжавших в страны с государственным языком – английский (поле Государственный язык не включайте в результат выполнения запроса).
  3. Составьте запрос на получение сведений о туристах (Фамилия, Адрес, Телефон), приобретавших путевки через турагентство «Экстрим» (поле Турагентство не включайте в результат выполнения запроса).
  4. Составьте запрос на получение сведений о путевках (№ путевки, Дата заезда, Цена, Фамилия туриста) в Италию в 2001 году (для указания даты используйте шаблон).
Читайте также:  Телефоны с экраном super amoled

Результат выполнения запроса :

  1. Составьте запрос на получение сведений о туристах (Фамилия, имя туриста, телефон, № путевки), выезжавших по «горящим» путевкам. Название турагентства не включайте в результат выполнения запроса.
  2. Составьте запрос на получение сведений (№ путевки, Дата заезда, Цена, Турагентство, Телефон турагентства) по турам в США.
  3. Составьте запрос на получение сведений (№ путевки, Цена, Дата заезда) о ценах на путевки, в программу которых входило посещение Пизанской башни .
  4. Составьте запрос на получение сведений о туристах (Фамилия, Адрес_внутри_города, Телефон), которые путешествовали в июле-августе 2002 года (для указания даты используйте Построитель выражений , для удаления повторяющихся записей – итоги ).

Для получения данных за некоторый временной период, например, с 1 по 31 марта 2001 года , удобно пользоваться оператором Between. And .

Сформируйте бланк запроса (перенесите нужные поля в бланк запроса), установите курсор в строке Условие отбора поля ДатаЗаезда и вызовите Построитель выражений (вкладка Конструктор – группа команд Настройка запроса — кнопка ).

В окне Построителя выражений выберите (щелчком мыши) Операторы – Сравнения – Between . Щелкните по кнопке Вставить .

В верхнем поле окна появиться строчка: Between Выражение And Выражение .

Двойным щелчком выделите первое слово Выражение и введите с клавиатуры 01.03.2001 (начало периода), затем двойным щелчком выделите второе слово Выражение и введите 31.03.2001 (конец периода). Нажмите кнопку ОК .

Аналогично этому примеру введите временной диапазон для Вашего запроса.

Результат выполнения запроса:

  1. Составьте запрос на получение сведений о том, куда и когда выезжал Петров (Название страны, Дата заезда). Не забывайте удалять из результата выполнения запроса повторяющиеся записи.
  2. Составьте запрос на получение сведений о путевке (№ путевки, Дата заезда, Цена, Название страны), приобретенной Чумаковой.
  3. Составьте запрос на получение сведений о странах (Название страны, Столица, Название объекта), которые посетил Хрущев с марта 2001 года по июнь 2002 года (для указания даты используйте Построитель выражений ). Фамилию туриста в итоговую таблицу не включайте . С помощью группировки удалите из итоговой таблицы повторяющиеся записи.

Так как нас интересует временной диапазон в целом ( с марта по июнь ) , без разбивки на конкретные даты, то в строке Группировка для поля ДатаЗаезда выберите из раскрывающегося списка — Условие .

  1. Составьте запрос на получение сведений о том, кто из туристов (Фамилия, Дата заезда, Название страны) выезжал по путевке №2003070105.
  2. Составьте запрос на получение сведений (№ путевки, Дата заезда, Цена, Название страны) о «горящих» путевках. Поле Турагентство не включайте в результат выполнения запроса.
  3. Составьте запрос на получение сведений о турагентствах (Турагентство, Адрес и Телефон турагентства, Дата заезда), которые реализовывали путевки, в программу которых входило посещение Ватикана. Название объекта ( Ватикан ) в итоговую таблицу не включайте .
  4. Составьте запрос на получение сведений о достопримечательностях (Название страны, Название объекта, Описание), которые можно было посетить по путевкам, приобретенным у турагентства «Верона». Название турагентства ( Верона ) в итоговую таблицу не включайте .
  5. Составьте запрос на получение сведений (Название страны, Столица, Государственный язык) о том, в какие страны продавались путевки турагентством «Нева-тур» в 2002-2003 годах (для указания даты используйте Построитель выражений ).

Результат выполнения запроса:

  1. Составьте запрос на получение сведений (№ путевки, Дата заезда, Цена, Турагентство, Телефон турагентства) о том, какие турагентства и по каким ценам реализуют путевки в Англию. Название страны ( Англия ) в итоговую таблицу не включайте .
  2. Составьте запрос на получение сведений о путевках (№ путевки, Дата заезда, Цена, Турагентство, Телефон турагентства), по которым можно было посетить Тауэр. Название объекта ( Тауэр ) в итоговую таблицу не включайте .

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

Конструирование запросов на выборку с условиями отбора

Рассмотрим запросы на выборку в Access на примере получения информации из таблицы ТОВАР базы данных Поставка товаров.

Задача 1. Пусть необходимо выбрать ряд характеристик товара по его наименованию.

  1. Для создания запроса в окне базы данных выберите вкладку ленты — Создание (Create) и в группе Запросы (Queries) нажмите кнопку Конструктор запросов (Query Design). Откроется пустое окно запроса на выборку в режиме конструктора — ЗапросN (QueryN) и диалоговое окно Добавление таблицы (Show Table) (рис. 4.2).
  2. В окне Добавление таблицы (Show Table) выберите таблицу ТОВАР и нажмите кнопку Добавить (Add). Выбранная таблица будет отображена в области схемы данных запроса. Закройте окно Добавление таблицы (Show Table), нажав кнопку Закрыть (Close).

В результате выполненных действий в окне конструктора запросов (рис. 4.1) в верхней панели появится схема данных запроса, которая включает выбранные для данного запроса таблицы. В данном случае одну таблицу ТОВАР. Таблица представлена списком полей. Первая строка в списке полей таблицы, отмеченная звездочкой (*), обозначает все множество полей таблицы. Нижняя панель является бланком запроса, который нужно заполнить.

Кроме того, на ленте появляется и автоматически активизируется новая вкладка Работа с запросами | Конструктор (Query Tools | Design) (на рис. 4.3 представлена на часть этой вкладки), на которой цветом выделен тип созданного запроса — Выборка (Select). Таким образом, по умолчанию всегда создается запрос на выборку. Команды этой вкладки представляют инструментарий для выполнения необходимых действий при создании запроса. Эта вкладка открывается, когда в режиме конструктора создается новый запрос или редактируется существующий.

Читайте также:  Тест микрофона на андроид

  1. Для удаления любой таблицы из схемы данных запроса установите на нее курсор мыши и нажмите клавишу . Для добавления ― нажмите кнопку Отобразить таблицу ( Show Table) в группе Настройка запроса (Query Setup) на вкладке Работа с запросами | Конструктор (Query Tools | Design) или выполните команду Добавить таблицу (Show Table) в контекстном меню, вызываемом на схеме данных запроса.
  2. В окне конструктора (рис. 4.4) последовательно перетащите из списка полей таблицы ТОВАР поля НАИМ_ТОВ, ЦЕНА, НАЛИЧИЕ_ТОВ в столбцы бланка запроса в строку Поле (Field).
  3. Для включения нужных полей из таблицы в соответствующие столбцы запроса можно воспользоваться следующими приемами:
    • в первой строке бланка запроса Поле (Field) щелчком мыши вызвать появление кнопки списка и выбрать из списка нужное поле. Список содержит поля таблиц, представленных в схеме данных запроса;
    • дважды щелкнуть на имени поля таблицы в схеме данных запроса;
    • для включения всех полей таблицы можно перетащить или дважды щелкнуть на символе * (звездочка) в списке полей таблицы в схеме данных запроса.
    • Если вы по ошибке перетащили в бланке запроса ненужное поле, удалите его. Для этого переместите курсор в область маркировки столбца сверху, где он примет вид черной стрелки, направленной вниз, и щелкните кнопкой мыши. Столбец выделится. Нажмите клавишу или выполните команду Удалить столбцы (Delete Columns) в группе Настройка запроса (Query Setup).
    • В строке Вывод на экран (Show) отметьте поля, иначе они не будут включены в таблицу запроса.
    • Запишите в строке Условия отбора (Criteria) наименование товара, как показа-но в бланке запроса на рис. 4.4. Так как выражение в условии отбора не содержит оператора, то по умолчанию используется оператор =. Используемое в выражении текстовое значение вводится в двойных кавычках, которые добавляются автоматически.
    • Выполните запрос, щелкнув на кнопке Выполнить (Run) или на кнопке Режим (View) в группе Результаты (Results). На экране появится окно запроса в режиме таблицы с записью из таблицы ТОВАР, отвечающей заданным условиям отбора.

    1. Если при вводе сложного наименования товара вы допустили неточность, товар не будет найден в таблице. Использование операторов шаблона — звездочка (*) и вопросительный знак (?) (стандарт ANSI-89, используемый для запросов по умолчанию) или знак процента (%) и подчеркивания (_) (ANSI-92, рекомендуемый как стандарт для SQL Server), упрощает поиск нужных строк и позволяет избежать многих ошибок. Введите вместо полного имени товара Корпус* или Корпус%. Выполните запрос. Если в поле наименования товара одно значение начинается со слова «Корпус», результат выполнения запроса будет таким же, как в предыдущем случае. После выполнения запроса введенное выражение будет дополнено оператором Like «Корпус*». Этот оператор позволяет использовать символы шаблона при поиске в текстовых полях.
    2. Если необходимо найти несколько товаров, используйте оператор In. Он позволяет выполнить проверку на равенство любому значению из списка, который задается в круглых скобках. Запишите в строке условий отбора In («Корпуc MiniTower»;»HDD Maxtor 20GB»;»FDD 3,5″). В таблице запроса будет выведено три строки. В операторе In не допускается использование символов шаблона.
  4. Сохраните запрос, щелкнув на вкладке Файл (File) и выполнив команду Сохранить (Save). В окне Сохранение (Save As) введите имя запроса Пример1. Заметим, что имя запроса не должно совпадать не только с именами имеющихся запросов, но и с именами таблиц в базе данных.
  5. Закройте текущий запрос по команде контекстного меню Закрыть (Close) или нажав кнопку окна запроса Закрыть (Close).
  6. Выполните сохраненный запрос, выделив запрос в области навигации и выбрав в контекстном меню команду Открыть (Open).
  7. Для редактирования запроса выделите его в области навигации и выполните в контекстном меню команду Конструктор (Design View).
  8. Задача 2. Пусть надо выбрать товары, цена которых не более 1000 руб., и НДС не более 10%, а также выбрать товары, цена которых более 2500 руб. Результат должен содержать наименование товара (НАИМ_ТОВ), его цену (ЦЕНА) и НДС (СТАВКА_НДС).

    1. Создайте новый запрос в режиме конструктора, добавьте таблицу ТОВАР. В окне конструктора (рис. 4.5) последовательно перетащите из списка полей таблицы ТОВАР в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС.
    2. Запишите Условия отбора (Criteria), как показано в бланке запроса на рис. 4.5. Между условиями, записанными в одной строке, выполняется логическая операция AND. Между условиями, записанными в разных строках, выполняется логическая операция OR.
    3. Выполните запрос, щелкните на кнопке Выполнить (Run) в группе Результаты (Results). На экране появится окно запроса в режиме таблицы с записями из таблицы ТОВАР, отвечающими заданным условиям отбора.
    4. Сохраните запрос, выполнив соответствующую команду в контекстном меню запроса, которое вызывается при установке курсора на заголовок запроса. Дайте ему имя Пример2.

    Задача 3. Пусть надо выбрать все накладные за заданный период. Результат должен содержать номер накладной (НОМ_НАК), код склада (КОД_СК), дату отгрузки (ДАТА_ОТГР) и общую стоимость отгруженного товара (СУММА_НАКЛ).

    1. Создайте новый запрос в режиме конструктора, добавьте таблицу НАКЛАДНАЯ. В окне конструктора последовательно перетащите из списка полей таблицы НАКЛАДНАЯ в бланк запроса все необходимые поля.
    2. Для поля ДАТА_ОТГР в строке Условия отбора (Criteria) запишите Between #11.01.2008# And #31.03.2008#. Оператор Between задает интервал дат (в ANSI-92 вместо знака # используются одинарные кавычки ‘). Кроме того, этот оператор позволяет задать интервал для числового значения.

    Для закрепления смотрим видеоурок:

    Ссылка на основную публикацию
    Смарт часы что они умеют
    В этой статье мы поговорим о том, для чего нужны умные часы, а также какими функциями они располагают чаще всего....
    Сервер не поддерживает символы не ascii
    Многие из нас пользуются замечательным FTP сервером FileZilla Server. Думаю, не я один столкнулся с проблемой некорректного отображения русских букв...
    Сервера для обновления nod32 бесплатно
    Отличие полной версии от триальной Полные (не триальные) антивирусные базы и программные компоненты Eset Antivirus и Eset Smart Security! Отличия...
    Смарт часы самсунг с сим картой
    Хотите быть современным и модным человеком? Перестать зависеть от своего громоздкого смартфона? Только представьте, вы можете не брать телефон на...
    Adblock detector