日志服务允许您在 SQL 分析语句中定义 Lambda 表达式,并将其传递给指定函数,从而增强函数的功能。本文将介绍 Lambda 表达式的基本语法及示例。
说明
Lambda 表达式需与 SQL 函数结合使用,例如 FILTER 函数、REDUCE 函数、TRANSFORM 函数、MAP_FILTER 函数等。
parameter -> expression
参数 | 说明 |
---|---|
parameter | 输入参数,可以添加多个参数,使用英文逗号(,)分隔。 |
expression | 对输入参数进行操作的表达式。
|
x -> x > 0
。
场景
结合 FILTER 函数和 Lambda 表达式 x -> x > 0
,返回数组 [11,-3,null,9,-8]
中大于 0 的元素。
检索与分析语句
* | SELECT FILTER(array[11,-3,null,9,-8],x -> x > 0)
检索与分析结果
x -> x * 2
场景
结合 TRANSFORM 函数和 Lambda 表达式 x -> x * 2
,将数组 [99,87,16,43,25]
中的各个元素乘以 2,然后返回计算结果。
检索与分析语句
* | SELECT TRANSFORM(array[99,87,16,43,25],x -> x * 2) LIMIT 1
检索与分析结果
x -> regexp_like(x, '\d+')
场景
结合 TRANSFORM 函数和 Lambda 表达式 x -> regexp_like(x, '\d+')
,判断 ['region','010','name']
数组中的各个元素是否包含数字,并返回判断结果。
检索与分析语句
* | SELECT TRANSFORM(array['region','010','name'],x -> regexp_like(x, '\d+')) LIMIT 1
检索与分析结果