The following the order of operator precedence in VistaDB.
Level | Operators |
---|---|
0 | ~ (Bitwise NOT), EXISTS |
1 | * (Multiply), / (Division), % (Modulo) |
2 | + (Positive), - (Negative), + (Add), (+ Concatenate), - (Subtract), & (Bitwise AND), ^ (Bitwise Exclusive OR), | (Bitwise OR) |
3 | =, >, <, >=, <=, <>, !=, !>, !< (Comparison operators) |
4 | NOT |
5 | AND |
6 | OR |
The following list contains the operators we attempt to optimize during our SQL parsing. If you have a problem with a particular select and it involves one of these operators you may wish to try it without optimization.
=, >, <, >=, <= (Comparison operators)
BETWEEN, LIKE
AND
OR
The following list contains the JOIN operators we currently support. We will add more later.
=, >, <, >=, <=, <> (Comparison operators)
BETWEEN
(not that IN is NOT supported)
This table shows for a given operator can the ISNULL operator be true.
For example performing a SQL statement like ISNULL(~@Variable) is legitimate. But performing ISNULL( @VARIABLE IS NULL ) is not valid.
Operator(s) | Can IsNull be True? |
---|---|
~ (Bitwise NOT) | Yes |
EXISTS | Yes |
* (Multiply), / (Division), % (Modulo) | Yes |
+ (Positive), - (Negative) | Yes |
+ (Add), (+ Concatenate), - (Subtract) | Yes |
& (Bitwise AND), ^ (Bitwise Exclusive OR), | (Bitwise OR) | Yes |
=, >, <, >=, <=, <>, != (Comparison operators) | Yes |
BETWEEN, IN, LIKE | Yes |
IS NULL | No |
NOT | Yes |
AND | Yes |
OR | Yes |