カテゴリ:

テーブル、ビュー、シーケンス DDL

SHOW OBJECTS

アクセス権限があるテーブルとビューをリストします。このコマンドを使用して、指定したデータベースまたはスキーマ(またはセッションの現在のデータベース/スキーマ)、またはアカウント全体のテーブルとビューを一覧表示できます。

構文

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

                    DATABASE                 |
                    DATABASE <database_name> |

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

パラメーター

LIKE 'pattern'

オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(% および _)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。

例えば、次のパターンは同じ結果を返します。

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
[ IN ... ]

Optionally specifies the scope of the command. Specify one of the following:

ACCOUNT

Returns records for the entire account.

DATABASE, . DATABASE db_name

Returns records for the current database in use or a specified database (db_name).

If you specify DATABASE without db_name and no database is in use, the keyword has no effect on the output.

SCHEMA, . SCHEMA schema_name, . schema_name

Returns records for the current schema in use or a specified schema (schema_name).

SCHEMA is optional if a database is in use or if you specify the fully-qualified schema_name (e.g. db.schema).

If no database is in use, specifying SCHEMA has no effect on the output.

デフォルト: セッションで現在使用中のデータベースがあるかどうかによって異なります。

  • データベース: DATABASE はデフォルトです(つまり、コマンドは、データベースで表示する権限を持つオブジェクトを返す)。

  • データベースなし: ACCOUNT はデフォルトです(つまり、コマンドは、アカウントで表示する権限を持つオブジェクトを返す)。

使用上の注意

  • このコマンドは、実行中のウェアハウスを必要としません。

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

    10Kを超えるレコードが存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。

  • このコマンドの出力を後処理するには、 RESULT_SCAN 関数を使用できます。この関数は、出力をクエリ可能なテーブルとして扱います。

  • マテリアライズドビューの場合、これは「MATERIALIZED VIEW」ではなく、「VIEW」を返します。

mydb データベースの public スキーマで表示する権限がある、名前が line で始まるすべてのテーブルとビューを表示します。

SHOW OBJECTS LIKE 'line%' IN mydb.public;
最上部に戻る