ТОП 10:

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



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

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

Рис. 2.11

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

Рис. 2.12

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Рис. 2.16.

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

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

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

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







Последнее изменение этой страницы: 2016-09-20; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.235.29.190 (0.004 с.)