Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по Ассess практические.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
1.11 Mб
Скачать

Создание запросов в конструкторе

Запросы на выборку с условием

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

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

Р ис. 2.11

Д алее, когда все нужные поля выставлены, определим вывод их на экран (наличие флажка в соответствующей строке) и зададим нужные условия. Первое условие касается фамилии. Следовательно, условие должно быть прописано в столбце «Фамилия» в строке «Условие отбора:». Наше условие заключается в том, чтобы первая буква фамилии была «С», а затем следовали любые другие. Любой символ заменяется в Access на значок * (см. рис. 2.12).

Рис. 2.12

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

Чтобы запрос был выполнен нажмите на панели инструментов кнопку с восклицательным знаком, кроме того, вам могут потребовать следующие кнопки (см. рис. 2.13).

  1. С оздать запрос выбирающих палаты, в которых не менее 3 мест.

Для создания этого запроса также будем использовать конструктор. В качестве источника укажем таблицу «Палаты». Условие запроса касается количества мест в палате, поэтому условие будем писать в соответствующем столбце. Так как количество мест должно быть не менее 3, то условие запишется: >3.

Запросы с параметром

  1. Создать запрос, отображающий всю информацию о пациенте после ввода его фамилии.

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

В нашем случае параметр – это фамилия пациента – текстовое поле, причем оно является условием отбора, следовательно, запрос будет выглядеть следующим образом (см. рис. 14):

Запросы на вычисление

  1. С оздать запрос, рассчитывающий количество отработанных смен для каждого из врачей.

Для этого в конструктор добавим таблицу «Врачи» и «Учет отработанных смен». Выставим поле фамилия из таблицы «Врачи» и в свободном столбце вызовем построитель выражений, где необходимо выбрать нужную таблицу, в которой можно выделять любые поля. Для вставки полей в выражение используйте кнопку «Вставить»(см. рис. 2.15). В строке выражений

Необходимо записать сумму всех полей по модулю (abs()).

Запросы на вычисление с использованием встроенных функций

  1. Создать запрос, вычисляющий срок пребывания пациентов в больнице.

Для организации этого запроса добавим в конструктор таблицу «Пациенты». Выставим поле «Фамилия» из таблицы пациенты, и построим поле Срок пребывания в больнице. Для этого будем использовать встроенную функцию Date(), которая определяет текущую дату (см. рис. 2.16.)

Рис. 2.16.

  1. Создать запрос, высчитывающий заработную плату врачей, из расчета, что ставка за смену по 1 категории 650 р., по второй – 480 р., по третьей и четвертой – 320 р.

Для вычисления заработной платы будем использовать встроенную функцию управления: IIf(<Условие>; <Действие 1>; <Действие 2>). Условие – это логическое выражение, которое может принимать значение ложь или истина; действие 1 – это действие, которое выполняется, когда условие верно, а действие 2 – это действие, которое выполняется, когда условие неверно.

Таким образом, в построитель выражений у вас должно быть внесено:

Заработная плата: IIf([Врачи]![Категория]=1;[Количество смен]![Общее количество смен]*650; IIf([Врачи]![Категория]=2; [Количество смен]![Общее количество смен]*450;[Количество смен]![Общее количество смен]*320))

Запросы на вычисление с использованием групповых операций

  1. Вычислите количество пациентов в каждой палате. Для создания этого запроса необходимо добавить в конструктор таблицы «Пациенты» и «Палаты».

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

Рис. 2.17