Array
The e6 Ingestion Engine scalar functions are based on Apache DataFusion and these docs are derived from the DataFusion function reference.
Quick reference
array_append(arr, elem)
Append element
array_append([1,2,3], 4)
[1,2,3,4]
array_concat(arr1, arr2)
Concatenate arrays
array_concat([1,2], [3,4])
[1,2,3,4]
array_has(arr, elem)
Check if contains
array_has([1,2,3], 2)
true
array_length(arr)
Number of elements
array_length([1,2,3])
3
array_element(arr, idx)
Get element at index
array_element([10,20,30], 2)
20
array_position(arr, elem)
Find position
array_position([1,2,3], 2)
2
array_remove(arr, elem)
Remove first occurrence
array_remove([1,2,2,3], 2)
[1,2,3]
array_replace(arr, from, to)
Replace first occurrence
array_replace([1,2,3], 2, 9)
[1,9,3]
array_reverse(arr)
Reverse order
array_reverse([1,2,3])
[3,2,1]
array_slice(arr, start, end)
Extract slice
array_slice([1,2,3,4,5], 2, 4)
[2,3,4]
array_sort(arr)
Sort elements
array_sort([3,1,2])
[1,2,3]
array_distinct(arr)
Remove duplicates
array_distinct([1,2,2,3])
[1,2,3]
array_intersect(a, b)
Common elements
array_intersect([1,2,3], [2,3,4])
[2,3]
array_union(a, b)
All unique elements
array_union([1,2,3], [3,4,5])
[1,2,3,4,5]
array_except(a, b)
Elements in a not in b
array_except([1,2,3], [2,3,4])
[1]
array_prepend(elem, arr)
Prepend element
array_prepend(0, [1,2,3])
[0,1,2,3]
flatten(arr)
Flatten nested arrays
flatten([[1,2],[3,4]])
[1,2,3,4]
make_array(e1, ...)
Create array
make_array(1,2,3)
[1,2,3]
array_to_string(arr, sep)
Join as string
array_to_string([1,2,3], ',')
'1,2,3'
cardinality(arr)
Total element count
cardinality([[1,2],[3,4]])
4
array_append
Appends an element to the end of an array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to append to the array.
Example
Aliases
array_push_back
list_append
list_push_back
array_sort
Sort array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
desc: Whether to sort in descending order(
ASCorDESC).nulls_first: Whether to sort nulls first(
NULLS FIRSTorNULLS LAST).
Example
Aliases
list_sort
array_resize
Resizes the list to contain size elements. Initializes new elements with value or empty if value is not set.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
size: New size of given array.
value: Defines new elements' value or empty if value is not set.
Example
Aliases
list_resize
array_cat
Alias of array_concat.
array_concat
Concatenates arrays.
Arguments
array: Array expression to concatenate. Can be a constant, column, or function, and any combination of array operators.
array_n: Subsequent array column or literal array to concatenate.
Example
Aliases
array_cat
list_cat
list_concat
array_contains
Alias of array_has.
array_has
Returns true if the array contains the element
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Scalar or Array expression. Can be a constant, column, or function, and any combination of array operators.
Aliases
list_has
array_has_all
Returns true if all elements of sub-array exist in array
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
sub-array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Aliases
list_has_all
array_has_any
Returns true if any elements exist in both arrays
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
sub-array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Aliases
list_has_any
array_dims
Returns an array of the array's dimensions.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_dims
array_distinct
Returns distinct values from the array after removing duplicates.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_distinct
array_element
Extracts the element with the index n from the array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
index: Index to extract the element from the array.
Example
Aliases
array_extract
list_element
list_extract
array_extract
Alias of array_element.
array_fill
Returns an array filled with copies of the given value.
DEPRECATED: use array_repeat instead!
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to copy to the array.
flatten
Converts an array of arrays to a flat array
Applies to any depth of nested arrays
Does not change arrays that are already flat
The flattened array contains all the elements from all source arrays.
Arguments
array: Array expression Can be a constant, column, or function, and any combination of array operators.
array_indexof
Alias of array_position.
array_intersect
Returns an array of elements in the intersection of array1 and array2.
Arguments
array1: Array expression. Can be a constant, column, or function, and any combination of array operators.
array2: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_intersect
array_join
Alias of array_to_string.
array_length
Returns the length of the array dimension.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
dimension: Array dimension.
Example
Aliases
list_length
array_ndims
Returns the number of dimensions of the array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_ndims
array_prepend
Prepends an element to the beginning of an array.
Arguments
element: Element to prepend to the array.
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
array_push_front
list_prepend
list_push_front
array_pop_front
Returns the array without the first element.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_pop_front
array_pop_back
Returns the array without the last element.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_pop_back
array_position
Returns the position of the first occurrence of the specified element in the array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to search for position in the array.
index: Index at which to start searching.
Example
Aliases
array_indexof
list_indexof
list_position
array_positions
Searches for an element in the array, returns all occurrences.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to search for positions in the array.
Example
Aliases
list_positions
array_push_back
Alias of array_append.
array_push_front
Alias of array_prepend.
array_repeat
Returns an array containing element count times.
Arguments
element: Element expression. Can be a constant, column, or function, and any combination of array operators.
count: Value of how many times to repeat the element.
Example
Aliases
list_repeat
array_remove
Removes the first element from the array equal to the given value.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to be removed from the array.
Example
Aliases
list_remove
array_remove_n
Removes the first max elements from the array equal to the given value.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to be removed from the array.
max: Number of first occurrences to remove.
Example
Aliases
list_remove_n
array_remove_all
Removes all elements from the array equal to the given value.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
element: Element to be removed from the array.
Example
Aliases
list_remove_all
array_replace
Replaces the first occurrence of the specified element with another specified element.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
from: Initial element.
to: Final element.
Example
Aliases
list_replace
array_replace_n
Replaces the first max occurrences of the specified element with another specified element.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
from: Initial element.
to: Final element.
max: Number of first occurrences to replace.
Example
Aliases
list_replace_n
array_replace_all
Replaces all occurrences of the specified element with another specified element.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
from: Initial element.
to: Final element.
Example
Aliases
list_replace_all
array_reverse
Returns the array with the order of the elements reversed.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_reverse
array_slice
Returns a slice of the array based on 1-indexed start and end positions.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
begin: Index of the first element. If negative, it counts backward from the end of the array.
end: Index of the last element. If negative, it counts backward from the end of the array.
stride: Stride of the array slice. The default is 1.
Example
Aliases
list_slice
array_to_string
Converts each element to its text representation.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
delimiter: Array element separator.
Example
Aliases
array_join
list_join
list_to_string
array_union
Returns an array of elements that are present in both arrays (all elements from both arrays) with out duplicates.
Arguments
array1: Array expression. Can be a constant, column, or function, and any combination of array operators.
array2: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_union
array_except
Returns an array of the elements that appear in the first array but not in the second.
Arguments
array1: Array expression. Can be a constant, column, or function, and any combination of array operators.
array2: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
list_except
cardinality
Returns the total number of elements in the array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
empty
Returns 1 for an empty array or 0 for a non-empty array.
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
Example
Aliases
array_empty,
list_empty
generate_series
Similar to the range function, but it includes the upper bound.
Arguments
start: start of the range
end: end of the range (included)
step: increase by step (can not be 0)
Example
list_append
Alias of array_append.
list_cat
Alias of array_concat.
list_concat
Alias of array_concat.
list_dims
Alias of array_dims.
list_distinct
Alias of array_dims.
list_element
Alias of array_element.
list_empty
Alias of empty.
list_except
Alias of array_element.
list_extract
Alias of array_element.
list_has
Alias of array_has.
list_has_all
Alias of array_has_all.
list_has_any
Alias of array_has_any.
list_indexof
Alias of array_position.
list_intersect
Alias of array_position.
list_join
Alias of array_to_string.
list_length
Alias of array_length.
list_ndims
Alias of array_ndims.
list_prepend
Alias of array_prepend.
list_pop_back
Alias of array_pop_back.
list_pop_front
Alias of array_pop_front.
list_position
Alias of array_position.
list_positions
Alias of array_positions.
list_push_back
Alias of array_append.
list_push_front
Alias of array_prepend.
list_repeat
Alias of array_repeat.
list_resize
Alias of array_resize.
list_remove
Alias of array_remove.
list_remove_n
Alias of array_remove_n.
list_remove_all
Alias of array_remove_all.
list_replace
Alias of array_replace.
list_replace_n
Alias of array_replace_n.
list_replace_all
Alias of array_replace_all.
list_reverse
Alias of array_reverse.
list_slice
Alias of array_slice.
list_sort
Alias of array_sort.
list_to_string
Alias of array_to_string.
list_union
Alias of array_union.
make_array
Returns an Arrow array using the specified input expressions.
array_empty
Alias of empty.
Arguments
expression_n: Expression to include in the output array. Can be a constant, column, or function, and any combination of arithmetic or string operators.
Example
Aliases
make_list
make_list
Alias of make_array.
string_to_array
Splits a string in to an array of substrings based on a delimiter. Any substrings matching the optional null_str argument are replaced with NULL. SELECT string_to_array('abc##def', '##') or SELECT string_to_array('abc def', ' ', 'def')
Arguments
str: String expression to split.
delimiter: Delimiter string to split on.
null_str: Substring values to be replaced with
NULL
Aliases
string_to_list
string_to_list
Alias of string_to_array.
trim_array
Removes the last n elements from the array.
DEPRECATED: use array_slice instead!
Arguments
array: Array expression. Can be a constant, column, or function, and any combination of array operators.
n: Element to trim the array.
range
Returns an Arrow array between start and stop with step. SELECT range(2, 10, 3) -> [2, 5, 8] or SELECT range(DATE '1992-09-01', DATE '1993-03-01', INTERVAL '1' MONTH);
The range start..end contains all values with start <= x < end. It is empty if start >= end.
Step can not be 0 (then the range will be nonsense.).
Note that when the required range is a number, it accepts (stop), (start, stop), and (start, stop, step) as parameters, but when the required range is a date, it must be 3 non-NULL parameters. For example,
are allowed in number ranges
but in date ranges, only
is allowed, and
are not allowed
Arguments
start: start of the range
end: end of the range (not included)
step: increase by step (can not be 0)
Aliases
generate_series
Last updated
Was this helpful?

