The usual logical operators include AND, OR, and NOT. SQL uses a three-valued logical system with true, false, and null, which represents "unknown". Their priorities are NOT > AND > OR.
Table 1 lists operation rules, where a and b represent logical expressions.
a |
b |
a AND b Result |
a OR b Result |
NOT a Result |
---|---|---|---|---|
TRUE |
TRUE |
TRUE |
TRUE |
FALSE |
TRUE |
FALSE |
FALSE |
TRUE |
FALSE |
TRUE |
NULL |
NULL |
TRUE |
FALSE |
FALSE |
FALSE |
FALSE |
FALSE |
TRUE |
FALSE |
NULL |
FALSE |
NULL |
TRUE |
NULL |
NULL |
NULL |
NULL |
NULL |
The operators AND and OR are commutative, that is, you can switch the left and right operand without affecting the result.