Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Это статья из цикла статей о языке SQL для Access. В ней описано предложение WHERE и приведены примеры, поясняющие различные методы, используемые при его составлении.

В предложении WHERE инструкции SQL указываются условия, которым должны соответствовать значения полей, чтобы записи, содержащие эти значения, были включены в результаты запроса.

Общие сведения о языке SQL для Access см. в статье Access SQL. Основные понятия, лексика и синтаксис.

В этой статье

Ограничение результатов с помощью условий отбора

Если вы хотите использовать данные для ограничения количества записей, возвращаемых в запросе, можно использовать условия. Критерий запроса аналогичен формуле— это строка, которая может состоять из ссылок на поля, операторов и констант. Условия запроса — это тип выражение.

В таблице ниже представлены образцы условий и объясняется, как они работают.

Условие

Описание

>25 and <50

Это условие применяется к числовому полю, такому как "Цена" или "ЕдиницНаСкладе". Оно позволяет вывести только те записи, в которых поле "Цена" или "ЕдиницНаСкладе" содержит значение больше 25 и меньше 50.

DateDiff ("гггг", [ДатаРождения], Date()) > 30

Это условие применимо к полю типа «Дата/время», такому как «ДеньРождения». В результат запроса будут включены только те записи, в которых количество лет, прошедшее со дня рождения до текущей даты, превышает 30.

Is Null

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

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

Важно: Если поле используется с агрегатной функцией, нельзя указать критерии для этого поля в предложении WHERE. Вместо этого вы используете предложение HAVING для указания критериев для агрегированных полей. Дополнительные сведения см. в статьях Access SQL: основные понятия, словарь и синтаксис и предложение HAVING.

Синтаксис предложения WHERE

В предложении WHERE инструкции SELECT задаются условия запроса.

Предложение WHERE имеет следующий базовый синтаксис:

WHERE field = criterion

Предположим, например, что необходимо узнать телефонный номер клиента, но вы помните только его фамилию: Bagel. Вместо того, чтобы просматривать все телефонные номера, которые содержатся в базе данных, можно воспользоваться предложением WHERE, чтобы ограничить результаты и упростить поиск нужного номера. Если фамилии хранятся в поле LastName, предложение WHERE будет выглядеть следующим образом:

WHERE [LastName]='Bagel'

Примечание: Вам не нужно основывать критерии в предложении WHERE на эквивалентности значений. Можно использовать другие операторы сравнения, например больше (>) или меньше (<). Например, WHERE [Price] >100.

Использование предложения WHERE для объединения источников данных

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

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

Предположим, например, что необходимо использовать данные из Таблицы1 и Таблицы2, но только в том случае, когда данные в field1 (текстовое поле в Таблице1) совпадают с данными из field2 (числовое поле в Таблице2). Предложение WHERE будет выглядеть следующим образом:

WHERE field1 LIKE field2

Дополнительные сведения о создании условий отбора, используемых в предложении WHERE, см. в статье Примеры условий запроса.

К началу страницы

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.