Logical Operators#
SQL uses a 3-valued logic system with TRUE, FALSE and NULL (unknown):
a |
b |
a AND b |
a OR b |
|---|---|---|---|
TRUE |
TRUE |
TRUE |
TRUE |
TRUE |
FALSE |
FALSE |
TRUE |
TRUE |
NULL |
NULL |
TRUE |
FALSE |
FALSE |
FALSE |
FALSE |
FALSE |
NULL |
FALSE |
NULL |
NULL |
NULL |
NULL |
NULL |
a |
NOT a |
|---|---|
TRUE |
FALSE |
FALSE |
TRUE |
NULL |
NULL |
The operators AND and OR are commutative. However, it is not guaranteed that the left operand is evaluated before the right.