| 创建和使用 SPL 例程 / 执行例程 | |
正如内建的函数那样,您可通过在 SQL 和 SPL 语句中的表达式,使用 SPL 例程来执行 SPL 例程(以及来自 SPL 例程的外部例程)。表达式中使用的例程通常为函数,因为它将值返回至语句的剩余部分。
图: 执行 SPL 例程内的外部函数。
LET a = area( rectv.length, rectv.width );
CALL area( rectv.length, rectv.width ) RETURNING a;
-- 这些语句是等同的
图: 从 SQL 语句执行 SPL 例程。
CREATE FUNCTION raise_price ( num INT )
RETURNING DECIMAL;
DEFINE p DECIMAL;
SELECT increase_by_pct(price, 20) INTO p
FROM inventory WHERE prod_num = num;
RETURN p;
END FUNCTION;
该示例选择 inventory 的指定的行的 price 列,并使用该值作为 SPL 函数 increase_by_pct 的参数。然后,该函数返回新的 price 值,在变量中增加 20%。