Three-valued logic

The following tables show how the AND, OR, NOT, and IS logical operators of SQL work in three-valued logic.

AND operator

AND

TRUE

FALSE

UNKNOWN

TRUE

TRUE

FALSE

UNKNOWN

FALSE

FALSE

FALSE

FALSE

UNKNOWN

UNKNOWN

FALSE

UNKNOWN

OR operator

OR

TRUE

FALSE

UNKNOWN

TRUE

TRUE

TRUE

TRUE

FALSE

TRUE

FALSE

UNKNOWN

UNKNOWN

TRUE

UNKNOWN

UNKNOWN

NOT operator

TRUE

FALSE

UNKNOWN

FALSE

TRUE

UNKNOWN

IS operator

IS

TRUE

FALSE

UNKNOWN

TRUE

TRUE

FALSE

FALSE

FALSE

FALSE

TRUE

FALSE

UNKNOWN

FALSE

FALSE

TRUE