Mathematical functions
acos
Introduced in: v1.1
Returns the arc cosine of the argument.
Syntax
Arguments
Returned value
Returns the arc cosine of x Float*
Examples
Usage example
acosh
Introduced in: v20.12
Returns the inverse hyperbolic cosine.
Syntax
Arguments
Returned value
Returns the angle, in radians. Values from the interval: 0 ≤ acosh(x) < +∞
. Float64
Examples
Usage example
asin
Introduced in: v
Calculates the arcsine of the argument.
Takes arbitrary numeric type, which includes floating point and integer numbers, as well as big integers and decimals and returns Float64.
For arguments in range [-1, 1] it returns the value in range of [-pi() / 2, pi() / 2].
It represents an inverse function to function 'sin' on this range: [example:inverse]
It always returns Float64, even if the argument has Float32 type: [example:float32]
For arguments outside of this range, it returns nan: [example:nan]
Every self-respectful data scientist knows how to apply arcsine to improve ads click-through rate with ClickHouse. For more details, see [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions].
Syntax
Arguments
- None. Returned value
Examples
inverse
float32
nan
asinh
Introduced in: v20.12
Returns the inverse hyperbolic sine.
Syntax
Arguments
Returned value
Returns the angle, in radians. Values from the interval: -∞ < asinh(x) < +∞
. Float64
Examples
Basic usage
atan
Introduced in: v1.1
Returns the arc tangent of the argument.
Syntax
Arguments
Returned value
Returns the arc tangent of x
. Float*
Examples
Usage example
atan2
Introduced in: v20.12
Returns the atan2 as the angle in the Euclidean plane, given in radians, between the positive x axis and the ray to the point (x, y) ≠ (0, 0)
.
Syntax
Arguments
y
— y-coordinate of the point through which the ray passes.(U)Int*
orFloat*
orDecimal*
x
— x-coordinate of the point through which the ray passes.(U)Int*
orFloat*
orDecimal*
Returned value
Returns the angle θ
such that -π < θ ≤ π
, in radians Float64
Examples
Usage example
atanh
Introduced in: v20.12
Returns the inverse hyperbolic tangent.
Syntax
Arguments
x
— Hyperbolic tangent of angle. Values from the interval: -1 < x < 1.(U)Int*
,Float*
orDecimal*
.(U)Int*
orFloat*
orDecimal*
Returned value
Returns the angle, in radians. Values from the interval: -∞ < atanh(x) < +∞ Float64
Examples
Usage example
cbrt
Introduced in: v1.1
Returns the cubic root of the argument.
Syntax
Arguments
Returned value
Returns the cubic root of x
. Float*
Examples
Usage example
cos
Introduced in: v1.1
Returns the cosine of the argument.
Syntax
Arguments
Returned value
Returns the cosine of x
. Float*
Examples
Usage example
cosh
Introduced in: v20.12
Returns the hyperbolic cosine of the argument.
Syntax
Arguments
Returned value
Returns values from the interval: 1 ≤ cosh(x) < +∞
Float64
Examples
Basic usage
degrees
Introduced in: v22.2
Converts radians to degrees.
Syntax
Arguments
Returned value
Returns the value of x
in degrees. Float64
Examples
Basic usage
e
Introduced in: v1.1
Returns Euler's constant (e).
Syntax
Arguments
- None. Returned value
Returns Euler's constant Float64
Examples
Usage example
erf
Introduced in: v1.1
If x
is non-negative, then erf(x/(σ√2))
is the probability that a random variable having a normal distribution with standard deviation σ
takes the value that is separated from the expected value by more than x
.
Syntax
Arguments
Returned value
Returns the error function value Float*
Examples
Three sigma rule
erfc
Introduced in: v1.1
Returns a number close to 1-erf(x)
without loss of precision for large x
values.
Syntax
Arguments
Returned value
Returns the complementary error function value Float*
Examples
Usage example
exp
Introduced in: v1.1
Returns e raised to the power of x
, where x
is the given argument to the function.
Syntax
Arguments
Returned value
Returns e^x
Float*
Examples
Basic usage
exp10
Introduced in: v1.1
Returns 10 to the power of the given argument.
Syntax
Arguments
Returned value
Returns 10^x Float*
Examples
Usage example
exp2
Introduced in: v1.1
Returns 2 to the power of the given argument.
Syntax
Arguments
Returned value
Returns 2^x Float*
Examples
Usage example
factorial
Introduced in: v
Computes the factorial of an integer value. It works with any native integer type including UInt(8|16|32|64) and Int(8|16|32|64). The return type is UInt64.
The factorial of 0 is 1. Likewise, the factorial() function returns 1 for any negative value. The maximum positive value for the input argument is 20, a value of 21 or greater will cause exception throw.
Syntax
Arguments
- None. Returned value
Examples
factorial
hypot
Introduced in: v20.12
Returns the length of the hypotenuse of a right-angle triangle. Hypot avoids problems that occur when squaring very large or very small numbers.
Syntax
Arguments
x
— The first cathetus of a right-angle triangle.(U)Int*
orFloat*
orDecimal*
y
— The second cathetus of a right-angle triangle.(U)Int*
orFloat*
orDecimal*
Returned value
Returns the length of the hypotenuse of a right-angle triangle. Float64
Examples
Basic usage
intExp10
Introduced in: v1.1
Like exp10 but returns a UInt64
number.
Syntax
Arguments
Returned value
Returns 10^x. UInt64
Examples
Usage example
intExp2
Introduced in: v1.1
Like exp2 but returns a UInt64
number.
Syntax
Arguments
Returned value
Returns 2^x. UInt64
Examples
Usage example
lgamma
Introduced in: v1.1
Returns the logarithm of the gamma function.
Syntax
Arguments
x
— The number for which to compute the logarithm of the gamma function.(U)Int*
orFloat*
orDecimal*
Returned value
Returns the logarithm of the gamma function of x
. Float*
Examples
Usage example
log
Introduced in: v1.1
Returns the natural logarithm of the argument.
Syntax
Arguments
Returned value
Returns the natural logarithm of x
. Float*
Examples
Usage example
log10
Introduced in: v1.1
Returns the decimal logarithm of the argument.
Syntax
Arguments
Returned value
Returns the decimal logarithm of x
. Float*
Examples
Usage example
log1p
Introduced in: v20.12
Calculates log(1+x).
The calculation log1p(x) is more accurate than log(1+x) for small values of x
.
Syntax
Arguments
Returned value
Returns values from the interval: -∞ < log1p(x) < +∞ Float64
Examples
Usage example
log2
Introduced in: v1.1
Returns the binary logarithm of the argument.
Syntax
Arguments
Returned value
Returns the binary logarithm of x
. Float*
Examples
Usage example
pi
Introduced in: v1.1
Returns pi (π).
Syntax
Arguments
- None. Returned value
Returns pi Float64
Examples
Usage example
pow
Introduced in: v1.1
Returns x raised to the power of y.
Syntax
Arguments
x
— The base.(U)Int8/16/32/64
orFloat*
orDecimal*
y
— The exponent.(U)Int8/16/32/64
orFloat*
orDecimal*
Returned value
Returns x^y Float64
Examples
Usage example
radians
Introduced in: v22.2
Converts degrees to radians.
Syntax
Arguments
Returned value
Returns value in radians Float64
Examples
Usage example
sign
Introduced in: v21.2
Returns the sign of a real number.
Syntax
Arguments
Returned value
Returns -1
for x < 0
, 0
for x = 0
, 1
for x > 0
. Int8
Examples
Sign for zero
Sign for positive
Sign for negative
sin
Introduced in: v
Returns the sine of the argument.
Syntax
Arguments
Returned value
Returns the sine of x.
Examples
simple
sinh
Introduced in: v20.12
Returns the hyperbolic sine.
Syntax
Arguments
Returned value
Returns values from the interval: -∞ < sinh(x) < +∞ Float64
Examples
Usage example
sqrt
Introduced in: v1.1
Returns the square root of the argument.
Syntax
Arguments
Returned value
Returns the square root of x Float*
Examples
Usage example
tan
Introduced in: v1.1
Returns the tangent of the argument.
Syntax
Arguments
Returned value
Returns the tangent of x
. Float*
Examples
Usage example
tanh
Introduced in: v20.1
Returns the hyperbolic tangent.
Syntax
Arguments
Returned value
Returns values from the interval: -1 < tanh(x) < 1 Float*
Examples
Usage example
tgamma
Introduced in: v1.1
Returns the gamma function.
Syntax
Arguments
Returned value
Returns the gamma function value Float*
Examples
Usage example
widthBucket
Introduced in: v
Returns the number of the bucket in which operand
falls in a histogram having count
equal-width buckets spanning the range low
to high
. Returns 0
if operand < low
, and returns count+1
if operand >= high
.
operand
, low
, high
can be any native number type. count
can only be unsigned native integer and its value cannot be zero.
Syntax
There is also a case insensitive alias called WIDTH_BUCKET
to provide compatibility with other databases.
Example
Query: [example:simple]
Result:
Syntax
Arguments
- None. Returned value
Examples
simple