От фильтра к запросу. Типы запросов, страница 2

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

Итак, сконструируем запрос-выборку "Люкс". Пер­вым столбцом таблицы запроса назначим поле "Номер комнаты". В строки "Условие отбора" и "или" введем: 101, 201, 301. Закроем запрос (команда "Закрыть" в кнопке си­стемного меню окна "Запрос 1: запрос на выборку", "Да") и в окне "Сохранение" присвоим ему имя "Люкс" и нажмем "ОК".

Выберем запрос "Люкс" (пока он один и выбирать-то нечего) и нажмем кнопку "Открыть", либо дважды щелкнем на нем. При этом мы работаем с запросом в ре­жиме таблицы. Мы видим, что запрос состоит из одного поля "Номер комнаты", в котором три записи: 101, 201 и 301. В отличие от фильтра мы видим не всю таблицу, а только те поля, которые сконструированы в запросе. В запросе появляются только те поля (столбцы), которые в строке "Вывод на экран" (нижней таблицы запроса) помечены крестиком (в режиме конструктора). Если поле не помечено, то оно и не выво­дится в запросе.

Закроем запрос и вновь откроем его в режиме кон­структора. Строка "или" опустела, а в строке "Условие отбора" появилось выражение:

"101" Or "201" Or "301"

В этом выражении номера комнат разделены сим­волом "OR" ("ИЛИ").

Этот момент необходимо выделить особо - компью­тер (под управлением MicrosoftAccess) выразил наше человеческое перечисление с помощью логического опера­тора OR. Кроме оператора OR существуют и другие ло­гические операторы. К ним относится и оператор AND(И).

Т.к. операторы эти логические, то и используются они в логических выражениях. Логическое выражение мо­жет быть истинным (TRUE) или ложным (FALSE).

TRUE соответствует ДА или логическая 1, a FALSE - НЕТ или логический 0.

Оператор OR увеличивает круг выбора, a AND сужает его.

Кроме логических операторов есть еще операторы сравнения:

  меньше, чем

   больше, чем

>=  больше или равно

<=  меньше или равно

<> не равно

   равно

Эти операторы обычно применяют к числовым по­лям. Но их можно применить и к текстовым полям..

Для удаления запроса или таблицы (или любого другого объекта Access) достаточно выбрать нужный объект и нажать клавишу <DEL>. Вернемся к нашему запросу - запросу "Люкс".

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

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

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

Добавьте в запрос еще два поля-столбца: "Код кате­гории" и "Число мест". Выполните (или просмотрите) за­прос - Вы увидите три записи в трех полях. Затем верни­тесь в режим конструктора и, выделив третий столбец (стрелка вниз над именем столбца, щелчок), удалите его, нажав клавишу <DEL>. Теперь мы умеем и вставлять, и удалять поля-столбцы в запросе.

Оставив в запросе два столбца: "Номер комнаты" и "Код категории", поработаем со строкой "Условие отбора". Добавим в эту строку букву "Л" (код категории люкс) в столбце "Код категории":


Ничего не изменилось. И это понятно: все три но­мера комнаты, перечисленные в условии отбора, принад­лежат к категории люкс. Точно такой же результат мы получим, если вообще уберем номера комнат из условии отбора, оставим только букву "Л":

Все, что мы с Вами получили, достаточно очевидно. Но, допустим, что мы ошиблись и вместо "Л" набрали "П" (код первой категории), а номера комнат люкс в условии тоже остались:

Выполнив запрос, мы увидим, что оба поля таблицы пусты:

Номер

комнаты

Код

категории