Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL リファレンス » SQL の使用 » SQL 文 » SQL 文 (P ~ Z)

 

RETURN 文

この文は、関数、プロシージャ、またはバッチを無条件で終了し、オプションで値を返すために使用します。

構文
RETURN [ expression ]
備考

RETURN 文を使うと、SQL のブロックをすぐに終了できます。expression を指定する場合、expression の値を関数またはプロシージャの値として返します。

RETURN が内側の BEGIN ブロックにある場合、外側の BEGIN ブロックが終了します。

RETURN 文の後の文は実行されません。

関数の中では、式を関数の RETURNS データ型と同じデータ型にしてください。

プロシージャ内では、RETURN は Transact-SQL との互換性を確保するためのもので、整数のエラー・コードを返すために使用されます。

パーミッション

なし

関連する動作

なし

参照
標準と互換性
  • SQL/2003   永続的ストアド・モジュール機能。

次の関数は、3 つの数値の積を返します。

CREATE FUNCTION product (
   a NUMERIC,
   b NUMERIC,
   c NUMERIC )
RETURNS NUMERIC
BEGIN
   RETURN ( a * b * c );
END;

3 つの数値の積を計算します。

SELECT product(2, 3, 4);
product(2, 3, 4)
24.000000

次のプロシージャは、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;