此语句用于从函数、过程或批处理中无条件退出,并可以选择提供返回值。
RETURN [ expression ]
RETURN 语句导致从 SQL 块中立即退出。如果提供了 expression,则 expression 的值作为函数或过程的值返回。
如果 RETURN 出现在内部 BEGIN 块中,则所终止的是外部 BEGIN 块。
RETURN 语句之后的语句不再执行。
在函数中,表达式的数据类型应当与函数的 RETURNS 数据类型相同。
在过程中,使用 RETURN 是为了与 Transact-SQL 兼容,它用于返回整型错误代码。
无。
无。
SQL/2003 持久存储模块特性。
下面的函数返回三个数字的乘积:
CREATE FUNCTION product ( a NUMERIC, b NUMERIC, c NUMERIC ) RETURNS NUMERIC BEGIN RETURN ( a * b * c ); END; |
计算三个数字的乘积:
SELECT product(2, 3, 4); |
product(2, 3, 4) |
---|
24 |
下面的过程使用 RETURN 语句避免执行复杂查询(如果这样做没有意义的话):
CREATE PROCEDURE customer_products ( in customer_ID integer DEFAULT NULL) RESULT ( ID integer, quantity_ordered integer ) BEGIN IF customer_ID NOT IN (SELECT ID FROM Customers) OR customer_ID IS NULL THEN RETURN ELSE SELECT Products.ID,sum( SalesOrderItems.Quantity ) FROM Products, SalesOrderItems, SalesOrders WHERE SalesOrders.CustomerID=customer_ID AND SalesOrders.ID=SalesOrderItems.ID AND SalesOrderItems.ProductID=Products.ID GROUP BY Products.ID END IF END; |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |