📄️ all_match
判断数组中的所有元素是否都匹配谓词中 (predicate) 指定的条件。
📄️ any_match
判断数组中是否有元素匹配谓词中 (predicate) 指定的条件。
📄️ array_agg
将一列中的值(包括空值 null)串联成一个数组(多行转一行)。在 3.0 版本之前,该函数不保证数组里元素的顺序。从 3.0 版本开始,array_agg() 支持使用 ORDER BY 对数组里的元素进行排序。
📄️ array_append
在数组末尾添加一个新的元素。返回 ARRAY 类型的值。
📄️ array_avg
求取一个ARRAY中的所有数据的平均数,返回这个结果。
📄️ array_concat
将多个数组拼接成一个数组。拼接后的数组包含多个数组里的所有元素。待拼接的数组元素类型可以相同,也可以不同,但是建议对相同元素类型的数组进行拼接。
📄️ array_contains
检查数组中是否包含某个元素,是的话返回 1,否则返回 0。
📄️ array_contains_all
检查数组arr1是否包含数组arr2中的所有元素,即arr2是否为arr1的子集。是的话返回1,否则返回0。
📄️ array_contains_seq
描述
📄️ array_cum_sum
对数组中的元素进行向前累加。
📄️ array_difference
对于数值型数组,返回相邻两个元素的差(从后者中减去前者)构成的数组。
📄️ array_distinct
数组元素去重。
📄️ array_filter
根据设定的过滤条件返回数组中匹配的元素。该函数可用于普通的数组过滤,也可以搭配 Lambda 函数进行更灵活的数组过滤。有关 Lambda 表达式的详细信息,参见 Lambda expression。该函数从 2.5 版本开始支持。
📄️ array_generate
生成一个包含数值元素的数组,数值范围在 start 和 end 之间,步长为 step。
📄️ array_intersect
对于多个同类型数组,返回交集。
📄️ array_join
将数组中的所有元素连接生成一个字符串。
📄️ array_length
计算数组中的元素个数,返回值类型是 INT。如果输入参数是 NULL,返回值也是 NULL。数组中的 NULL 元素会计入长度。
📄️ array_map
arraymap() 是支持 Lambda 表达式的高阶函数。用于将输入的 arr1,arr2 等数组按照 lambdafunction 进行转换,输出一个新的数组。有关 Lambda 表达式的详细信息,参见 Lambda expression。该函数从 2.5 版本开始支持。
📄️ array_max
求取一个ARRAY中的所有数据中的最大值,返回这个结果。
📄️ array_min
求取一个ARRAY中的所有数据中的最小值,返回这个结果。
📄️ array_position
获取数组中某个元素位置,是的话返回位置,否则返回0.
📄️ array_remove
从数组中移除指定元素。
📄️ array_repeat
功能
📄️ array_slice
返回数组的一个数组片段。根据 offset 指定的位置,从 input 中截取长度为 length 的数组片段。
📄️ array_sort
对数组中的元素进行升序排列。
📄️ array_sortby
对数组中的元素根据另外一个键值数组元素或者 Lambda 函数生成的键值数组元素进行升序排列。有关 Lambda 表达式的详细信息,参见 Lambda expression。该函数从 2.5 版本开始支持。
📄️ array_sum
对数组中的所有元素求和。
📄️ array_to_bitmap
将 array 类型转化为 bitmap 类型。该函数从 2.3 版本开始支持。
📄️ array_unique_agg
将一列中的 distinct 值(包括空值 null)串联成一个数组(多行转一行)。
📄️ arrays_overlap
判断两个相同类型的数组中是否包含相同的元素。返回1代表存在相同元素,返回0代表不存在相同元素。
📄️ cardinality
计算数组中的元素个数,返回值类型是 INT。如果输入参数是 NULL,返回值也是 NULL。数组中的 NULL 元素会计入长度,比如 [1,2,3,null] 会计算为 4 个元素。
📄️ element_at
获取 Array 数组中指定位置的元素。如果输入值为 NULL 或指定的位置不存在,则返回 NULL。
📄️ reverse
将字符串或数组反转,返回的字符串或数组的顺序和源字符串或数组的顺序相反。
📄️ unnest
UNNEST 是一种表函数 (table function),用于将一个数组展开成多行。