Returning a value¶
To return a value, use the RETURN command. You can return a value from the following items:
A block in a stored procedure or Snowflake Scripting user-defined function (UDF).
An anonymous block.
Types of return values¶
You can return a value of one of the following types:
A table
Use
TABLE(...)in the RETURN statement.If your block is in a stored procedure, you must also specify the
RETURNS TABLE(...)clause in the CREATE PROCEDURE statement.Note
Currently, in the
RETURNS TABLE(...)clause, you can’t specify GEOGRAPHY as a column type. This applies whether you are creating a stored or anonymous procedure.If you attempt to specify GEOGRAPHY as a column type, calling the stored procedure results in the error:
To work around this issue, you can omit the column arguments and types in
RETURNS TABLE().If you want to return the data that a RESULTSET points to, pass the RESULTSET to
TABLE(...), as shown in the example below:
Returning the value of a variable¶
This example declares a variable named my_var for use in a Snowflake Scripting anonymous block and
then returns the value of the variable:
Note: If you use Snowflake CLI, SnowSQL, the Classic Console, or the
execute_stream or execute_string method in Python Connector
code, use this example instead (see Using Snowflake Scripting in Snowflake CLI, SnowSQL, and Python Connector):