Arithmetic Operators
CQL supports the following operators:
Operator | Description |
---|---|
- (unary) |
Negates operand |
+ |
Addition |
- |
Substraction |
* |
Multiplication |
/ |
Division |
% |
Returns the remainder of a division |
Number Arithmetic
All arithmetic operations are supported on numeric types or counters.
The return type of the operation will be based on the operand types:
left/right | tinyint | smallint | int | bigint | counter | float | double | varint | decimal |
---|---|---|---|---|---|---|---|---|---|
tinyint |
tinyint |
smallint |
int |
bigint |
bigint |
float |
double |
varint |
decimal |
smallint |
smallint |
smallint |
int |
bigint |
bigint |
float |
double |
varint |
decimal |
int |
int |
int |
int |
bigint |
bigint |
float |
double |
varint |
decimal |
bigint |
bigint |
bigint |
bigint |
bigint |
bigint |
double |
double |
varint |
decimal |
counter |
bigint |
bigint |
bigint |
bigint |
bigint |
double |
double |
varint |
decimal |
float |
float |
float |
float |
double |
double |
float |
double |
decimal |
decimal |
double |
double |
double |
double |
double |
double |
double |
double |
decimal |
decimal |
varint |
varint |
varint |
varint |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
decimal |
*
, /
and %
operators have a higher precedence level than +
and
-
operator. By consequence, they will be evaluated before. If two
operator in an expression have the same precedence level, they will be
evaluated left to right based on their position in the expression.