Mathematical operators

Mathematical operators are provided for many data types.

Mathematical operators are provided for many data types.

Operator Description Example Result
! Factorial 5 ! 120
+ Addition 2 + 3 5
Subtraction 2 – 3 –1
* Multiplication 2 * 3 6
/ Division (integer division produces NUMERIC results). 4 / 2 2.00...
// With integer division, returns an INTEGER rather than a NUMERIC. 117.32 // 2.5 46
% Modulo (remainder). For details, see MOD. 5 % 4 1
^ Exponentiation 2.0 ^ 3.0 8
|/ Square root |/ 25.0 5
||/ Cube root ||/ 27.0 3
!! Factorial (prefix operator) !! 5 120
@ Absolute value @ -5.0 5

Factorial operator support

Vertica supports use of factorial operators on positive and negative floating point (DOUBLE PRECISION) numbers and integers. For example:

=> SELECT 4.98!;
   ?column?
------------------
 115.978600750905
(1 row)

Factorial is defined in terms of the gamma function, where (-1) = Infinity and the other negative integers are undefined. For example:

(–4)! = NaN
–(4!) = –24

Factorial is defined as follows for all complex numbers z:

z! = gamma(z+1)

For details, see Abramowitz and Stegun: Handbook of Mathematical Functions.