在 LET 语句中调用函数

您可以在 LET 语句中调用用户定义的函数,并将返回值指定给接收函数返回的值的 SPL 变量。

SPL 函数可将多个值(即,来自同一行中多个列的值)返回到变量名称列表中。换句话说,该函数可在其 RETURN 语句中有多个值,并且 LET 语句可有多个变量以接收返回值。

当调用函数时,必须对函数指定所有必要的参数,除非函数的参数有缺省值。如果您使用语法(如 name = 'smith')给被调用的函数中的多个参数中的一个指定了名称,则必须命名所有参数。

选择和返回多个行的 SPL 函数必须包括在 FOREACH 循环中。

以下两个示例显示了有效的 LET 语句:
LET a, b, c = func1(name = 'grok', age = 17);
      LET a, b, c = 7, func2('orange', 'green');
以下 LET 语句无效,因为它试图添加两个函数的输出,然后将总和指定给两个变量 ab
LET a, b = func1() + func2(); -- INVALID CODE
您可以轻松地将此 LET 语句分为两个有效的 LET 语句:
LET a = (func1() + func2()); 
        LET b = a;                   -- VALID CODE
在 LET 语句中调用的函数可以有 COLLECTION 、SET 、MULTISET 或 LIST 参数。您可以将函数返回的值指定给变量,例如:
LET d = function1(collection1);
        LET a = function2(set1);

在第一个语句中,SPL 函数 function1 接受 collection1 (即,任何集合数据类型)作为参数并将其值返回给变量 d。第二个语句中,SPL 函数 function2 接受s set1 作为参数并将值返回给变量 a