SHOW FUNCTIONS

列出本机、用户定义、外部或机器学习模型中定义的函数。

有关更多信息,请参阅 函数和存储过程参考用户定义函数概述编写外部函数Snowflake Model Registry (Snowpark ML Ops)

另请参阅:

SHOW USER FUNCTIONSSHOW EXTERNAL FUNCTIONSCREATE FUNCTIONDROP FUNCTIONALTER FUNCTIONDESCRIBE FUNCTION

语法

SHOW FUNCTIONS [ LIKE '<pattern>' ]
               [ IN
                    {
                      ACCOUNT                       |

                      CLASS <class_name>            |

                      DATABASE                      |
                      DATABASE <database_name>      |

                      MODEL <model_name>
                         [ VERSION <version_name> ] |

                      SCHEMA                        |
                      SCHEMA <schema_name>          |
                      <schema_name>
                    }
               ]
Copy

参数

LIKE 'pattern'

(可选)按对象名称筛选命令输出。筛选器使用 不区分大小写 的模式匹配,并支持 SQL 通配符(%_)。

例如,以下模式返回 相同的 结果:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. 默认:无值(不对输出应用筛选)。

[ IN ... ]

(可选)指定命令的作用域。指定以下任一项:

ACCOUNT

返回整个账户的记录。

CLASS class_name

返回指定类 (class_name) 的记录。

DATABASE. DATABASE db_name

返回当前使用的数据库或指定数据库 (db_name) 的记录。

如果指定 DATABASE 而不指定 db_name,并且没有使用任何数据库,则关键字对输出没有影响。

SCHEMA. SCHEMA schema_name. schema_name

返回当前正在使用的架构或指定架构 (schema_name) 的记录。

如果数据库正在使用中,或者指定了完全限定 schema_name`(例如 ``db.schema`),则 SCHEMA 是可选选项。

如果未使用任何数据库,则指定 SCHEMA 对输出没有影响。

默认:取决于会话当前是否正在使用数据库:

  • 数据库:DATABASE 是默认值(即该命令返回您有权在数据库中查看的对象)。

  • 无数据库:ACCOUNT 是默认值(即该命令返回您有权在账户中查看的对象)。

MODEL model_name. MODEL model_name VERSION version_name

为指定机器学习模型 (model_name) 的指定版本 (version_name) 返回记录。

如果未指定版本,则显示模型默认版本的记录。

输出

输出会有所不同,具体取决于您是在模型中显示函数,还是在其他类型的函数中显示函数。

大多数类型的函数

对于大多数类型的函数(但不是机器学习模型的方法),命令输出在以下列中提供函数属性和元数据:

描述

created_on

创建函数时的时间戳。

name

函数的名称。

schema_name

函数所在架构的名称。(NULL 用于内置函数。)

is_builtin

如果函数是内置函数,则为 ``Y``(是),否则为 ``N``(否)。

is_aggregate

如果函数是聚合函数,则为 ``Y``(是),否则为 ``N``(否)。

is_ansi

如果函数被定义为 ANSI SQL 标准的一部分,则为 ``Y``(是),否则为 ``N``(否)。

min_num_arguments

最小实参数量。

max_num_arguments

最大实参数量。

arguments

显示实参和返回值的数据类型。

description

函数的描述。

catalog_name

函数所在数据库的名称。(NULL 用于内置函数。)

is_table_function

如果函数是表函数,则为 ``Y``(是),否则为 ``N``(否)。

valid_for_clustering

如果函数可以在 CLUSTER BY 表达式中使用,则为 ``Y``(是),否则为 ``N``(否)。

is_secure

如果函数是安全函数,则为 ``Y``(是),否则为 ``N``(否)。

is_external_function

如果函数是外部函数,则为 ``Y``(是),否则为 ``N``(否)。

language

  • 对于内置函数,此列显示 SQL

  • 对于用户定义的函数,此列显示编写函数时使用的语言,例如 JAVASCRIPTSQL

  • 对于外部函数,此列显示 EXTERNAL

is_memoizable

如果函数可记忆,则为 Y(是),否则为 N(否)。

is_data_metric

如果函数是 DMF,则为 Y(是),否则为 N(否)。

备注

机器学习模型的方法不包含在输出中。

机器学习模型

对于机器学习模型的方法,SHOW FUNCTIONS IN MODEL 命令输出改为在以下列中提供函数属性和元数据:

描述

created_on

创建函数时的时间戳。

name

函数的名称。

version_name

函数所属的模型版本的名称。

min_num_arguments

函数的最小实参数量。

max_num_arguments

函数的最大实参数量。

arguments

作为 JSON格式的字符串的实参的数据类型。

return_type

返回值的数据类型。

description

函数的描述。

language

函数的编写语言,例如“PYTHON”。

备注

输出中仅包含机器学习模型的方法。

使用说明

  • 以前缀 is_ 开头的列返回 Y (yes) 或 N (no)。

  • 该命令不需要正在运行的仓库即可执行。

  • 该命令 最多 返回指定对象类型的 1 万条记录,由用于执行命令的角色的访问权限决定;即使应用了筛选器,也不会返回任何超过 1 万条限制的记录。

    要查看存在超过 1 万条记录的结果,请在 Snowflake Information Schema 中查询相应的视图(如果存在)。

  • 若要对此命令的输出进行后处理,可以使用 RESULT_SCAN 函数,该函数会将输出视为可查询的表。

  • 如果指定 CLASS,该命令将只返回以下列:

    | name | min_num_arguments | max_num_arguments | arguments | descriptions | language |
    
  • 此命令的输出可能包括名称类似于 SN_TEMP_OBJECT_<n> 的对象(其中 <n> 是数字)。这些是 Snowpark 库代表用户创建的临时对象。

示例

显示所有功能:

SHOW FUNCTIONS;
Copy

仅显示与指定正则表达式匹配的函数:

SHOW FUNCTIONS LIKE 'SQUARE';

------------+--------+-------------+------------+--------------+---------+-------------------+-------------------+----------------------------------------------------------------------+------------------------------------------------------------+----------+---------------+----------------+
 created_on | name   | schema_name | is_builtin | is_aggregate | is_ansi | min_num_arguments | max_num_arguments |                               arguments                              |                      description                           | language | is_memoizable | is_data_metric |
------------+--------+-------------+------------+--------------+---------+-------------------+-------------------+----------------------------------------------------------------------+------------------------------------------------------------+----------+---------------+----------------+
            | SQUARE |             | Y          | N            | Y       | 1                 | 1                 | SQUARE(NUMBER(38,0)) RETURN NUMBER(38,0), SQUARE(FLOAT) RETURN FLOAT | Compute the square of the input expression.                | SQL      | N             | N              |
------------+--------+-------------+------------+--------------+---------+-------------------+-------------------+----------------------------------------------------------------------+------------------------------------------------------------+----------+---------------+----------------+
Copy
语言: 中文