Skip to content

Latest commit

 

History

History
532 lines (342 loc) · 11.8 KB

math.mdx

File metadata and controls

532 lines (342 loc) · 11.8 KB
title description
Math functions
Scalar functions for mathematical operations

{/* Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */}

Arroyo's Scalar function implementations are based on Apache DataFusion and these docs are derived from the DataFusion function reference.

abs

Returns the absolute value of a number.

abs(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

acos

Returns the arc cosine or inverse cosine of a number.

acos(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

acosh

Returns the area hyperbolic cosine or inverse hyperbolic cosine of a number.

acosh(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

asin

Returns the arc sine or inverse sine of a number.

asin(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

asinh

Returns the area hyperbolic sine or inverse hyperbolic sine of a number.

asinh(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

atan

Returns the arc tangent or inverse tangent of a number.

atan(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

atanh

Returns the area hyperbolic tangent or inverse hyperbolic tangent of a number.

atanh(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

atan2

Returns the arc tangent or inverse tangent of expression_y / expression_x.

atan2(expression_y, expression_x)

Arguments

  • expression_y: First numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • expression_x: Second numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

cbrt

Returns the cube root of a number.

cbrt(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

ceil

Returns the nearest integer greater than or equal to a number.

ceil(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

cos

Returns the cosine of a number.

cos(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

cosh

Returns the hyperbolic cosine of a number.

cosh(numeric_expression)

degrees

Converts radians to degrees.

degrees(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

exp

Returns the base-e exponential of a number.

exp(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to use as the exponent. Can be a constant, column, or function, and any combination of arithmetic operators.

factorial

Factorial. Returns 1 if value is less than 2.

factorial(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

floor

Returns the nearest integer less than or equal to a number.

floor(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

gcd

Returns the greatest common divisor of expression_x and expression_y. Returns 0 if both inputs are zero.

gcd(expression_x, expression_y)

Arguments

  • expression_x: First numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • expression_y: Second numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

isnan

Returns true if a given number is +NaN or -NaN otherwise returns false.

isnan(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

iszero

Returns true if a given number is +0.0 or -0.0 otherwise returns false.

iszero(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

lcm

Returns the least common multiple of expression_x and expression_y. Returns 0 if either input is zero.

lcm(expression_x, expression_y)

Arguments

  • expression_x: First numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • expression_y: Second numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

ln

Returns the natural logarithm of a number.

ln(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

log

Returns the base-x logarithm of a number. Can either provide a specified base, or if omitted then takes the base-10 of a number.

log(base, numeric_expression)
log(numeric_expression)

Arguments

  • base: Base numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

log10

Returns the base-10 logarithm of a number.

log10(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

log2

Returns the base-2 logarithm of a number.

log2(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

nanvl

Returns the first argument if it's not NaN. Returns the second argument otherwise.

nanvl(expression_x, expression_y)

Arguments

  • expression_x: Numeric expression to return if it's not NaN. Can be a constant, column, or function, and any combination of arithmetic operators.
  • expression_y: Numeric expression to return if the first expression is NaN. Can be a constant, column, or function, and any combination of arithmetic operators.

pi

Returns an approximate value of π.

pi()

power

Returns a base expression raised to the power of an exponent.

power(base, exponent)

Arguments

  • base: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • exponent: Exponent numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

Aliases

  • pow

pow

Alias of power.

radians

Converts degrees to radians.

radians(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

random

Returns a random float value in the range [0, 1). The random seed is unique to each row.

random()

round

Rounds a number to the nearest integer.

round(numeric_expression[, decimal_places])

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.
  • decimal_places: Optional. The number of decimal places to round to. Defaults to 0.

signum

Returns the sign of a number. Negative numbers return -1. Zero and positive numbers return 1.

signum(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

sin

Returns the sine of a number.

sin(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

sinh

Returns the hyperbolic sine of a number.

sinh(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

sqrt

Returns the square root of a number.

sqrt(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

tan

Returns the tangent of a number.

tan(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

tanh

Returns the hyperbolic tangent of a number.

tanh(numeric_expression)

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

trunc

Truncates a number to a whole number or truncated to the specified decimal places.

trunc(numeric_expression[, decimal_places])

Arguments

  • numeric_expression: Numeric expression to operate on. Can be a constant, column, or function, and any combination of arithmetic operators.

  • decimal_places: Optional. The number of decimal places to truncate to. Defaults to 0 (truncate to a whole number). If decimal_places is a positive integer, truncates digits to the right of the decimal point. If decimal_places is a negative integer, replaces digits to the left of the decimal point with 0.