对输入MAP对象input进行变换,保持Key不变,通过func计算新的Value值。
命令格式
map<K, V2> transform_values(map<K, V1> <input>, function<K, V1, V2> <func>)
参数说明
input:必填。MAP对象。
map<K, V1>
中的K
、V1
指代MAP对象的Key、Value。func:必填。变换的函数(内建函数或自定义函数)或表达式。它的两个输入参数分别对应input的Key和Value,
V2
指代新MAP的Value类型。
返回值说明
返回MAP类型。
使用示例
--返回{-30:71, 10:-10, 20:NULL}。
select transform_values(map(10, -20, 20, null, -30, 101), (k, v) -> k + v);
说明
使用示例中涉及->
的使用,关于Lambda函数->
的介绍,详情请参见Lambda函数。
相关函数
TRANSFORM_VALUES函数属于复杂类型函数,更多对复杂类型数据(例如ARRAY、MAP、STRUCT、JSON数据)的处理函数请参见复杂类型函数。