PostgreSQL

PostgreSQL Elephant Logo

9.1. Logical Operators #

The usual logical operators are available:

boolean AND boolean → boolean
boolean OR boolean → boolean
NOT boolean → boolean

SQL uses a three-valued logic system with true, false, and null, which represents “[.quote]#unknown”#. Observe the following truth tables:

`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, that is, you can switch the left and right operands without affecting the result. (However, it is not guaranteed that the left operand is evaluated before the right operand. See Section 4.2.14 for more information about the order of evaluation of subexpressions.)


Prev Up Next

Chapter 9. Functions and Operators

Home

9.2. Comparison Functions and Operators

Submit correction

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.

Copyright © 1996-2024 The PostgreSQL Global Development Group