Использование выражений в запросах. Выражения в Access.
Операторы сравнения с образцом
Остальные операторы Access (табл. 4.7) упрощают создание выражений для выборки записей в запросах и относятся к операторам сравнения с образцом. Эти операторы возвращают True или False, в зависимости от соответствия значения в поле выбранной спецификации оператора. Наличие этих операторов в условиях на значение позволяет либо включать запись в запрос, если логическое значение, возвращаемое выражением, равно True, либо отвергать, если это значение – False.
Таблица 4.7. Другие операторы, используемые в выражениях Access.
Оператор | Пример | Описание |
---|---|---|
Between | Between (-100) And (100) | Определяет, находится ли числовое значение в определенном диапазоне значений |
Is | Is Null Is Not Null | При использовании вместе с Null определяет, является ли значение Null или Not Null |
In | In ("Москва", "Киев", "Санкт-Петербург") | Определяет, является ли строковое значение элементом списка значений |
Like | Like "Ив*" Like "db??" | Определяет, начинается ли строковое значение с указанных символов (для правильной работы Like нужно добавить символ шаблона "*" или один или несколько символов "?") |
Для пользователей, знакомых с шаблонами командной строки DOS, применение знаков (символов шаблона) "*" и "?" в операторах Like не вызовет затруднений. Точно так же, как в DOS, символ "*" замещает любое число знаков, а символ шаблона "?" замещает только один знак, поэтому Like "Ив*" вернет True для значений "Иванов", "Иващенко", "Иволгин". Для "dbl" или "dbl00" значение оператора Like "db??" будет False, но тот же оператор вернет для "dbl0" и "dbXX" значение True. Символы шаблона "*" и "?" могут стоять в любом месте шаблонной строки,. например:
- Like "*ms*.?*" – возвращает True только для значений, содержащих в своем теле подстроку "ms", после которой (может быть сразу, а может быть через несколько символов) следует не менее двух символов, первый из которых точка (.);
- Like "?1???*" – возвращает True только для значений, состоящих не менее чем из пяти символов, вторым из которых является "1".