文档

MAP_FILTER

更新时间:

将MAP对象input的元素进行过滤,只保留满足predicate条件的元素。

命令格式

map<K, V> map_filter(map<K, V> <input>, function <K, V, boolean> <predicate>)

参数说明

  • input:必填。MAP类型。map<K, V>中的KV指代MAP对象的Key、Value。

  • predicate:必填。用于对输入MAP对象中的元素进行过滤的函数(内建函数或自定义函数)或表达式。它的两个输入参数,分别对应input中的Key和Value,输出结果为BOOLEAN类型。

返回值说明

返回MAP类型。

使用示例

--返回{-30:100, 20:50}。
select map_filter(map(10, -20, 20, 50, -30, 100, 21, null), (k, v) -> (k+v) > 10);
说明

使用示例中涉及->的使用,关于Lambda函数->的介绍,详情请参见Lambda函数

相关函数

MAP_FILTER函数属于复杂类型函数,更多对复杂类型数据(例如ARRAY、MAP、STRUCT、JSON数据)的处理函数请参见复杂类型函数