Логические операторы

Логические (булевы) операторы в Microsoft Access используются для объединения нескольких выражений сравнения в одно логическое условие. Они позволяют создавать сложные критерии фильтрации и управления данными.

Список логических операторов

Использование логических операторов в Access

Логические операторы используются в:

Примеры логических выражений

Таблица значений логических операторов

В таблице 4.4 показано, как логические операторы работают с различными значениями.

 A=True, B=FalseA=True, B=TrueA=False, B=FalseA=False, B=True
A And BFalseTrueFalseFalse
A Or BTrueTrueFalseTrue
Not AFalseFalseTrueTrue
A Xor BTrueFalseFalseTrue
A Eqv BFalseTrueTrueFalse
A Imp BFalseTrueTrueTrue

Таблица 4.4. Зависимость значений логических операторов от значений операндов

Работа с NULL-значениями

При работе с логическими операторами и значением NULL результат может отличаться. В таблице 4.5 приведены результаты для оператора Imp.

 A=Null, B=FalseA=Null, B=TrueA=False, B=NullA=True, B=NullA=Null, B=Null
A Imp BNullTrueTrueNullNull

Таблица 4.5. Значения оператора Imp с NULL-значениями

Логические операторы и побитовое сравнение

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

Таблица значений логических операторов для однобитовых операндов

В таблице 4.6 показано, как логические операторы работают при побитовом сравнении.

 бит A=1, бит B=0бит A=1, бит B=1бит A=0, бит B=0бит A=0, бит B=1
A And B0100
A Or B1101
Not A0011
A Xor B1001
A Eqv B0110
A Imp B0111

Таблица 4.6. Значения логических операторов при побитовом сравнении

Дополнительные примеры использования

Заключение

Логические операторы позволяют создавать сложные условия отбора записей в Microsoft Access. Они применяются в запросах, фильтрах, макросах и VBA. Помимо стандартных логических операций, Access поддерживает побитовое сравнение, которое полезно при работе с двоичными данными.