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.