Дайте команду на выполнение созданного запроса (как это сделать, уже обсуждалось). В результате вы получите перечень аварий на нефтепроводах (см. рис. 11.16).
Рис. 11.16
Теперь посмотрим, как будет выглядеть в данном примере инструкция SQL, приведенная на рис. 11.17.
Рис. 11.17
Как видите, по своей структуре, то есть по составу ключевых параметров, эта инструкция совпадает с предыдущей. Разница лишь в том, что предложение с ключевым словом SELECT включает не одно, как в предшествующем случае, а все поля записи. Синтаксические правила записи каждого отдельного поля, естественно, не изменяются.
Разумеется, подобные критерии можно вводить одновременно в разные поля бланка запроса. В нашем случае используем логическую схему «И»: компонентами составного критерия будут отдельные критерии для различных полей записи базы данных. Поясним это на примере, который представляет собой расширенный вариант только что рассмотренной ситуации.
Запросы с несколькими критериями отбора, заданными в разных полях
Сформулируем новый запрос так: «По информации, собранной в таблице Fiie1, выдать справку об авариях на нефтепроводах Тюменской области».
Окно конструктора для этого запроса показано на рис. 11.18. Как видите, здесь заданы два критерия: прежний – "*нефтепровод*", дополнительный – "Тюменская область". (Слово «область» можно было и не вводить: название Тюменская уникально и само по себе служит достаточным критерием.) Новый критерий тоже можно заключить в звездочки. Результатом выполнения запроса будет таблица, выведенная на рис. 11.19.
Рис. 11.18
Рис. 11.19
Обратите внимание, что в предыдущем примере, где не указывался конкретный регион, было отобрано 8 записей. В настоящий момент, как и следовало ожидать, их число сократилось: записей только 2.
Теперь изучим соответствующую инструкцию SQL (см. рис. 11.20). Как видно из рисунка, введение нового критерия отбора влияет только на предложение с ключевым словом WHERE. К этому предложению добавляется логическое выражение типа AND (И), операндами которого являются "*нефтепровод*" и "Тюменская область". В остальном инструкция SQL остается неизменной.
Рис. 11.20
Запросы с несколькими критериями отбора, заданными в одном поле
Мы уже привыкли к тому, что в одном запросе может быть много критериев для отбора записей. Это вполне естественно, когда речь идет о разных полях записи, потому что каждое из них подобно независимой (или почти независимой) оси координат, а каждый критерий – конкретному значению координаты по данной оси. Но когда требуется задать несколько критериев отбора применительно к одному полю записи, задача усложняется. Посмотрим, как ее следует решать.
Предположим, пользователя интересуют аварии не только на нефтепроводах, то есть при транспортировке самой нефти, но и шире – при транспортировке различных нефтепродуктов: бензина, мазута, газового конденсата и др. Как выбрать в таком случае критерий отбора? Можно просто ввести в поле подстроку «провод», поскольку этот корень входит во многие слова, связанные с нашей темой: нефтепровод, бензопровод и т. д. Но тогда в выборку неизбежно попадут аварии на газопроводах (которых тоже немало), что не входит в наши планы. Итак, нам неизбежно придется задавать несколько критериев отбора для одного и того же поля записи и связывать их определенными логическими соотношениями. Покажем на конкретном примере, как это делается.
Предположим, надо получить справку об авариях, которые произошли:
• на нефтепроводах;
• на мазутопроводах;
• на бензопроводах;
• на продуктопроводах.
Мы предусмотрели практически все виды нефтепродуктов. Теперь построим соответствующий запрос.
Как обычно, сначала откройте пустой бланк запроса и введите туда все поля записи (последнее делать не обязательно – любые поля можно вносить в бланк и по отдельности). Критерий отбора сформулируйте так:
"*нефтепровод " OR «*бензопровод*» OR «*мазутопровод*» OR «*продуктопровод*».
Иначе говоря, вы выстраиваете логическую схему «ИЛИ». Теперь посмотрим, как она реализуется на практике.
Откройте окно конструктора запроса для таблицы Fiie1.Как и раньше, введите значение первого критерия – «*нефтепровод*» – в строку Условие отборана ее пересечении со столбцом Характеристика ЧЭС.Следующие значения критериев вводятся в этом же столбце, но в строках, расположенных ниже по вертикали. Каждая из них помечена словом OR (Или) – рис. 11.21.
Читать дальше
Конец ознакомительного отрывка
Купить книгу