7.6. Mathematical Functions and Operators#
Mathematical Operators#
| Operator | Description |
|---|---|
+ |
Addition |
- |
Subtraction |
* |
Multiplication |
/ |
Division (integer division performs truncation) |
% |
Modulus (remainder) |
Mathematical Functions#
-
abs(x) → [same as input]# Returns the absolute value of
x.
-
cbrt(x) → double# Returns the cube root of
x.
-
ceiling(x) → [same as input]# Returns
xrounded up to the nearest integer.
-
degrees(x) → double# Converts angle
xin radians to degrees.
-
e() → double# Returns the constant Euler’s number.
-
exp(x) → double# Returns Euler’s number raised to the power of
x.
-
floor(x) → [same as input]# Returns
xrounded down to the nearest integer.
-
ln(x) → double# Returns the natural logarithm of
x.
-
log(b, x) → double# Returns the base
blogarithm ofx.
-
log2(x) → double# Returns the base 2 logarithm of
x.
-
log10(x) → double# Returns the base 10 logarithm of
x.
-
mod(n, m) → [same as input]# Returns the modulus (remainder) of
ndivided bym.
-
pi() → double# Returns the constant Pi.
-
power(x, p) → double# Returns
xraised to the power ofp.
-
radians(x) → double# Converts angle
xin degrees to radians.
-
round(x) → [same as input]# Returns
xrounded to the nearest integer.
-
round(x, d) → [same as input] Returns
xrounded toddecimal places.
-
sign(x) → [same as input]# Returns the signum function of
x, that is:- 0 if the argument is 0,
- 1 if the argument is greater than 0,
- -1 if the argument is less than 0.
For double arguments, the function additionally returns:
- NaN if the argument is NaN,
- 1 if the argument is +Infinity,
- -1 if the argument is -Infinity.
-
sqrt(x) → double# Returns the square root of
x.
-
truncate(x) → double# Returns
xrounded to integer by dropping digits after decimal point.
-
width_bucket(x, bound1, bound2, n) → bigint# Returns the bin number of
xin an equi-width histogram with the specifiedbound1andbound2bounds andnnumber of buckets.
-
width_bucket(x, bins) → bigint Returns the bin number of
xaccording to the bins specified by the arraybins. Thebinsparameter must be an array of doubles and is assumed to be in sorted ascending order.
Random Functions#
-
random() → double# Returns a pseudo-random value in the range 0.0 <= x < 1.0.
-
random(n) → [same as input] Returns a pseudo-random number between 0 and n (exclusive).
-
random(m, n) → [same as input] Returns a pseudo-random number between m and n (exclusive).
Trigonometric Functions#
All trigonometric function arguments are expressed in radians.
See unit conversion functions degrees() and radians().
-
acos(x) → double# Returns the arc cosine of
x.
-
asin(x) → double# Returns the arc sine of
x.
-
atan(x) → double# Returns the arc tangent of
x.
-
atan2(y, x) → double# Returns the arc tangent of
y / x.
-
cos(x) → double# Returns the cosine of
x.
-
cosh(x) → double# Returns the hyperbolic cosine of
x.
-
sin(x) → double# Returns the sine of
x.
-
tan(x) → double# Returns the tangent of
x.
-
tanh(x) → double# Returns the hyperbolic tangent of
x.
Floating Point Functions#
-
infinity() → double# Returns the constant representing positive infinity.
-
is_finite(x) → boolean# Determine if
xis finite.
-
is_infinite(x) → boolean# Determine if
xis infinite.
-
is_nan(x) → boolean# Determine if
xis not-a-number.
-
nan() → double# Returns the constant representing not-a-number.
Base Conversion Functions#
-
from_base(string, radix) → bigint# Returns the value of
stringinterpreted as a base-radixnumber.
-
to_base(x, radix) → varchar# Returns the base-
radixrepresentation ofx.
Statistical Functions#
-
cosine_similarity(x, y) → double# Returns the cosine similarity between the sparse vectors
xandy:SELECT cosine_similarity(MAP(ARRAY['a'], ARRAY[1.0]), MAP(ARRAY['a'], ARRAY[2.0])); -- 1.0
-
wilson_interval_lower(successes, trials, z) → double# Returns the lower bound of the Wilson score interval of a Bernoulli trial process at a confidence specified by the z-score
z.
-
wilson_interval_upper(successes, trials, z) → double# Returns the upper bound of the Wilson score interval of a Bernoulli trial process at a confidence specified by the z-score
z.
Cumulative Distribution Functions#
-
beta_cdf(a, b, v) → double# Compute the Beta cdf with given a, b parameters: P(N < v; a, b). The a, b parameters must be positive real numbers and value v must be a real value. The value v must lie on the interval [0, 1].
-
inverse_beta_cdf(a, b, p) → double# Compute the inverse of the Beta cdf with given a, b parameters for the cumulative probability (p): P(N < n). The a, b parameters must be positive real values. The probability p must lie on the interval [0, 1].
-
inverse_normal_cdf(mean, sd, p) → double# Compute the inverse of the Normal cdf with given mean and standard deviation (sd) for the cumulative probability (p): P(N < n). The mean must be a real value and the standard deviation must be a real and positive value. The probability p must lie on the interval (0, 1).
-
normal_cdf(mean, sd, v) → double# Compute the Normal cdf with given mean and standard deviation (sd): P(N < v; mean, sd). The mean and value v must be real values and the standard deviation must be a real and positive value.