RETURN (Snowflakeスクリプト)

指定された式の値を返します。

戻り値の詳細については、 値を返す をご参照ください。

注釈

この Snowflakeスクリプト 構造は、 Snowflakeスクリプトブロック 内でのみ有効です。

構文

RETURN <expression>;
Copy

条件:

expression

返す値に評価される式。

使用上の注意

  • RETURN ステートメントは次の場所で実行できます。

    • ストアドプロシージャ。

    • 匿名ブロック。

  • RETURN ステートメントは、次のいずれかを返します。

    • SQL データ型

    • テーブル。 RETURN ステートメントで TABLE(...) を使用します。

      ブロックがストアドプロシージャにある場合は、 CREATE PROCEDURE ステートメントで RETURNS TABLE... 句も指定する必要があります。

      注釈

      現在、 CREATE PROCEDURERETURNS TABLE(...) 句では、列型として GEOGRAPHY を指定できません。

      CREATE OR REPLACE PROCEDURE test_return_geography_table_1()
      RETURNS TABLE(g GEOGRAPHY)
      ...
      
      Copy

      指定した場合にストアドプロシージャを呼び出すと、次のエラーが発生します。

      CALL test_return_geography_table_1();
      
      Copy
      Stored procedure execution error: data type of returned table does not match expected returned table type
      
      Copy

      これを回避するには、 RETURNS TABLE() の列の引数と型を省略できます。

      CREATE OR REPLACE PROCEDURE test_return_geography_table_1()
      RETURNS TABLE()
      ...
      
      Copy

      RESULTSET がポイントするデータを返す場合は、次の例に示すように、 RESULTSET をTABLE(...) に渡します。

      create procedure ...
      returns table(...)
      ...
          return table(my_result_set);
      ...
      
      Copy

      RESULTSET をテーブルとして返す をご参照ください。