SHOW FUNCTIONS

組み込み関数、ユーザー定義関数、外部関数を含む、アクセス権限のあるすべての関数をリストします。

ユーザー定義関数のみをリストするコマンドについては、 SHOW USER FUNCTIONS をご参照ください。

こちらもご参照ください。

SHOW USER FUNCTIONS , SHOW EXTERNAL FUNCTIONS , SHOW FUNCTIONS IN MODEL , CREATE FUNCTION , DROP FUNCTION , ALTER FUNCTION , DESCRIBE FUNCTION

構文

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

      CLASS <class_name>            |

      DATABASE                      |
      DATABASE <database_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)の記録を返します。

db_name なしで DATABASE を指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。

注釈

データベースコンテキストで IN 句を指定せずに SHOW コマンドを使用すると、予想よりも少ない結果になる可能性があります。

IN 句を使用しない場合、同じ名前のオブジェクトは一度だけ表示されます。例えば、 schema1 にテーブル t1 、そして schema2 にテーブル t1 があり、両方とも指定したデータベースコンテキストのスコープ内にある場合(つまり、選択したデータベースが schema1schema2 の親である場合)の場合、 SHOW TABLES は t1 テーブルの1つのみを表示します。

SCHEMA. SCHEMA schema_name

現在使用中のスキーマまたは指定されたスキーマ(schema_name)の記録を返します。

データベースが使用中の場合、または完全修飾 schema_name (例: db.schema) を指定する場合、 SCHEMA はオプションです。

データベースが使用されていない場合は、 SCHEMA を指定しても出力には影響しません。

IN ... を省略した場合、コマンドのスコープは、セッションで現在使用中のデータベースがあるかどうかによって異なります。

  • If a database is currently in use, the command returns the objects you have privileges to view in the database. This has the same effect as specifying IN DATABASE.

  • If no database is currently in use, the command returns the objects you have privileges to view in your account. This has the same effect as specifying IN ACCOUNT.

出力

コマンド出力では、次の列に関数プロパティとメタデータが提供されます。

説明

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 と表示されます。

  • ユーザー定義関数の場合、この列には関数の記述に使用した言語が表示されます(例: JAVASCRIPT または SQL)。SHOW USER FUNCTIONS をご参照ください。

  • 外部関数の場合、この列には、 EXTERNAL と表示されます。

is_memoizable

関数がメモ化可能な場合は Y、そうでない場合は N

is_data_metric

関数が DMF の場合は Y、そうでない場合は N

使用上の注意

  • CLASS を指定すると、コマンドは次の列のみを返します。

    | name | min_num_arguments | max_num_arguments | arguments | descriptions | language |
    
  • このコマンドの出力には、 SN_TEMP_OBJECT_<n><n> は数値)のような名前のオブジェクトが含まれる場合があります。これらは、ユーザーの代理として Snowpark ライブラリにより作成される仮オブジェクトです。

  • このコマンドの実行には、稼働中のウェアハウスは必要ありません。

  • このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。

  • MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。

  • このコマンドの出力を後処理するには、 パイプ演算子->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。

    For example, you can use the pipe operator or RESULT_SCAN function to select specific columns from the SHOW command output or filter the rows.

    When you refer to the output columns, use double-quoted identifiers for the column names. For example, to select the output column type, specify SELECT "type".

    You must use double-quoted identifiers because the output column names for SHOW commands are in lowercase. The double quotes ensure that the column names in the SELECT list or WHERE clause match the column names in the SHOW command output that was scanned.

  • コマンドは、コマンドを実行するために使用されるロールのアクセス権限によって決定された通り、指定されたオブジェクトタイプに対して 最大 1万件の記録を返します。1万件を超える記録は、フィルターを適用しても返されません。

    1万件を超える記録が存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。

すべての関数を表示します。

SHOW FUNCTIONS;
Copy

指定された正規表現に一致する関数のみを表示します。

SHOW FUNCTIONS LIKE 'SQUARE';
Copy
------------+--------+-------------+------------+--------------+---------+-------------------+-------------------+----------------------------------------------------------------------+------------------------------------------------------------+----------+---------------+----------------+
 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              |
------------+--------+-------------+------------+--------------+---------+-------------------+-------------------+----------------------------------------------------------------------+------------------------------------------------------------+----------+---------------+----------------+