functions_comparison.yaml¶
This document file is generated for functions_comparison.yaml. The extension URN is extension:io.substrait:functions_comparison.
Scalar Functions¶
not_equal¶
Whether two values are not_equal. not_equal(x, y) := (x != y) If either/both of x and y are null, null is returned.
Implementations:
- not_equal(
x: any1,y: any1): ->boolean
equal¶
Whether two values are equal. equal(x, y) := (x == y) If either/both of x and y are null, null is returned.
Implementations:
- equal(
x: any1,y: any1): ->boolean
is_not_distinct_from¶
Whether two values are equal. This function treats null values as comparable, so is_not_distinct_from(null, null) == True This is in contrast to equal, in which null values do not compare.
Implementations:
- is_not_distinct_from(
x: any1,y: any1): ->boolean
is_distinct_from¶
Whether two values are not equal. This function treats null values as comparable, so is_distinct_from(null, null) == False This is in contrast to equal, in which null values do not compare.
Implementations:
- is_distinct_from(
x: any1,y: any1): ->boolean
lt¶
Less than. lt(x, y) := (x < y) If either/both of x and y are null, null is returned.
Implementations:
- lt(
x: any1,y: any1): ->boolean
gt¶
Greater than. gt(x, y) := (x > y) If either/both of x and y are null, null is returned.
Implementations:
- gt(
x: any1,y: any1): ->boolean
lte¶
Less than or equal to. lte(x, y) := (x <= y) If either/both of x and y are null, null is returned.
Implementations:
- lte(
x: any1,y: any1): ->boolean
gte¶
Greater than or equal to. gte(x, y) := (x >= y) If either/both of x and y are null, null is returned.
Implementations:
- gte(
x: any1,y: any1): ->boolean
between¶
Whether the expression is greater than or equal to low and less than or equal to high. expression BETWEEN low AND high If low, high, or expression are null, null is returned.
Implementations:
- between(
expression: any1,low: any1,high: any1): ->boolean
is_true¶
Whether a value is true.
Implementations:
- is_true(
x: boolean): ->BOOLEAN
is_not_true¶
Whether a value is not true.
Implementations:
- is_not_true(
x: boolean): ->BOOLEAN
is_false¶
Whether a value is false.
Implementations:
- is_false(
x: boolean): ->BOOLEAN
is_not_false¶
Whether a value is not false.
Implementations:
- is_not_false(
x: boolean): ->BOOLEAN
is_null¶
Whether a value is null. NaN is not null.
Implementations:
- is_null(
x: any1): ->boolean
is_not_null¶
Whether a value is not null. NaN is not null.
Implementations:
- is_not_null(
x: any1): ->boolean
is_nan¶
Whether a value is not a number. If x is null, null is returned.
Implementations:
- is_nan(
x: fp32): ->boolean - is_nan(
x: fp64): ->boolean
is_finite¶
Whether a value is finite (neither infinite nor NaN). If x is null, null is returned.
Implementations:
- is_finite(
x: fp32): ->boolean - is_finite(
x: fp64): ->boolean
is_infinite¶
Whether a value is infinite. If x is null, null is returned.
Implementations:
- is_infinite(
x: fp32): ->boolean - is_infinite(
x: fp64): ->boolean
nullif¶
If two values are equal, return null. Otherwise, return the first value.
Implementations:
- nullif(
x: any1,y: any1): ->any1?
coalesce¶
Evaluate arguments from left to right and return the first argument that is not null. Once a non-null argument is found, the remaining arguments are not evaluated. If all arguments are null, return null.
Implementations:
- coalesce(
any1,any1): ->any1
least¶
Evaluates each argument and returns the smallest one. The function will return null if any argument evaluates to null.
Implementations:
- least(
any1,any1): ->any1
least_skip_null¶
Evaluates each argument and returns the smallest one. The function will return null only if all arguments evaluate to null.
Implementations:
- least_skip_null(
any1,any1): ->any1
greatest¶
Evaluates each argument and returns the largest one. The function will return null if any argument evaluates to null.
Implementations:
- greatest(
any1,any1): ->any1
greatest_skip_null¶
Evaluates each argument and returns the largest one. The function will return null only if all arguments evaluate to null.
Implementations:
- greatest_skip_null(
any1,any1): ->any1