For logical operators, boolean expressions or expressions that evaluates to an integer value are specified as operands; TRUE, FALSE or NULL is returned as the result. If the INTEGER value is used, 0 is evaluated to FALSE and the other values are evaluated to TRUE. If a boolean value is used, 1 is evaluated to TRUE and 0 is evaluated to FALSE.
The following table shows the logic operators supported by CUBRID.
Logical Operators Supported by CUBRID
Logical Operator |
Description |
Condition |
---|---|---|
AND, && |
If all operands are TRUE, it returns TRUE. |
a AND b |
OR, || |
If none of operands is NULL and one or more operand is TRUE, it returns TRUE. If pipes_as_concat is no that is a parameter related to SQL statements, a double pipe symbol can be used as OR operator. |
a OR b |
XOR |
If none of operand is NULL and each of operand has a different value, it returns TRUE. |
a XOR b |
NOT, ! |
A unary operator. If a operand is FALSE, it returns TRUE. If it is TRUE, returns FALSE. |
NOT a |
True Table of Logical Operators
a |
b |
a AND b |
a OR b |
NOT a |
a XOR b |
---|---|---|---|---|---|
TRUE |
TRUE |
TRUE |
TRUE |
FALSE |
FALSE |
TRUE |
FALSE |
FALSE |
TRUE |
FALSE |
TRUE |
TRUE |
NULL |
NULL |
TRUE |
FALSE |
NULL |
FALSE |
FALSE |
FALSE |
FALSE |
TRUE |
FALSE |
FALSE |
NULL |
FALSE |
NULL |
TRUE |
NULL |
You should put the logical expressions in brackets in the SELECT list.
SELECT 1 = 1 FROM db_root;
ERROR: syntax error, unexpected '='
SELECT (1 = 1) FROM db_root;
(1=1)
=============
1