SHOW MATERIALIZED VIEWS¶
アクセスする権限があるマテリアライズドビューをリストします。
マテリアライズドビューの詳細については、 マテリアライズドビューの使用 をご参照ください。
- こちらもご参照ください。
CREATE MATERIALIZED VIEW、 ALTER MATERIALIZED VIEW、 DROP MATERIALIZED VIEW、 DESCRIBE MATERIALIZED VIEW
構文¶
SHOW MATERIALIZED VIEWS [ LIKE '<pattern>' ]
[ IN
{
ACCOUNT |
DATABASE |
DATABASE <database_name> |
SCHEMA |
SCHEMA <schema_name> |
<schema_name>
APPLICATION <application_name> |
APPLICATION PACKAGE <application_package_name> |
}
]
パラメーター¶
LIKE 'pattern'オプションで、オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(
%および_)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。たとえば、次のパターンは 同じ 結果を返します。
... LIKE '%testing%' ...... LIKE '%TESTING%' .... デフォルト: 値なし(フィルタリングは出力に非適用)。
[ IN ... ]オプションで、コマンドのスコープを指定します。次のいずれかを指定します。
ACCOUNTアカウント全体の記録を返します。
DATABASE、 .DATABASE db_name現在使用中のデータベースまたは指定されたデータベース(
db_name)の記録を返します。db_nameなしでDATABASEを指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。注釈
データベースコンテキストで
IN句を指定せずに SHOW コマンドを使用すると、予想よりも少ない結果になる可能性があります。IN句を使用しない場合、同じ名前のオブジェクトは一度だけ表示されます。例えば、schema1にテーブルt1、そしてschema2にテーブルt1があり、両方とも指定したデータベースコンテキストのスコープ内にある場合(つまり、選択したデータベースがschema1とschema2の親である場合)の場合、 SHOW TABLES はt1テーブルの1つのみを表示します。SCHEMA、 .SCHEMA schema_name現在使用中のスキーマまたは指定されたスキーマ(
schema_name)の記録を返します。データベースが使用中の場合、または完全修飾
schema_name(例:db.schema) を指定する場合、SCHEMAはオプションです。データベースが使用されていない場合は、
SCHEMAを指定しても出力には影響しません。
APPLICATION application_name、 .APPLICATION PACKAGE application_package_name名前付き Snowflake Native App またはアプリケーションパッケージの記録を返します。
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.
使用上の注意¶
出力列は SHOW TABLES の出力列に似ていますが、次の追加の列が含まれています。
refreshed_on: 「リフレッシュ」操作 で処理されたベーステーブルに対する最後の DML 操作の時刻。
compacted_on: 「圧縮」操作 で処理されたベーステーブルに対する最後の DML 操作の時刻。
behind_by: ベーステーブルからの変更でマテリアライズドビューを更新するバックグラウンドプロセスがまだマテリアライズドビューを最新にしていない場合、この列は、マテリアライズドビューがベーステーブルからおよそ何秒「遅れ」ているかを示します。マテリアライズドビューが最新ではないと表示されている場合でも、マテリアライズドビューに対するクエリは最新の結果を返します(ベーステーブルから追加情報を取得するために多少時間がかかる場合あり)。
コマンド SHOW VIEWS は、マテリアライズドビューに関する情報も表示します。
このコマンドの実行には、稼働中のウェアハウスは必要ありません。
このコマンドは、現在のユーザーの現在のロールに少なくとも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, specifySELECT "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 で対応するビュー(存在する場合)をクエリします。
出力¶
コマンド出力では、次の列にマテリアライズドビュープロパティとメタデータが提供されます。
列 |
説明 |
|---|---|
created_on |
マテリアライズドビューが作成されたときのタイムスタンプ。 |
name |
マテリアライズドビューの名前。 |
reserved |
今後の使用のために予約されています。 |
database_name |
マテリアライズドビューが存在するデータベースの名前。 |
schema_name |
マテリアライズドビューが存在するスキーマの名前。 |
cluster_by |
クラスタリング列に関する情報(マテリアライズドビューがクラスター化されている場合)。 |
rows |
マテリアライズドビューの行数。 |
bytes |
マテリアライズドビューのデータのバイト数。 |
source_database_name |
マテリアライズドビューのベーステーブルが存在するデータベースの名前。 |
source_schema_name |
マテリアライズドビューのベーステーブルが存在するスキーマの名前。 |
source_table_name |
マテリアライズドビューのベーステーブルの名前。 |
refreshed_on |
「リフレッシュ」操作 で処理されたベーステーブルに対する最後の DML 操作のタイムスタンプ。 |
compacted_on |
「圧縮」操作 で処理されたベーステーブルに対する最後の DML 操作のタイムスタンプ。 |
owner |
マテリアライズドビューの所有者。 |
invalid |
マテリアライズドビューが現在無効である場合(例: ビューが使用する列をベーステーブルが削除した場合)はTrue。それ以外の場合はfalse。 |
invalid_reason |
マテリアライズドビューが現在無効である理由(ある場合)。 |
behind_by |
ベーステーブルの更新に対して、マテリアライズドビューの更新が遅れている度合い。 |
comment |
オプションのコメント。 |
text |
このマテリアライズドビューを作成したコマンドのテキスト(例: CREATE MATERIALIZED VIEW ...)。 |
is_secure |
マテリアライズドビューがセキュアビューである場合はtrue。それ以外の場合はfalse。 |
automatic_clustering |
ビューがクラスター化済み かつ クラスタリングが自動の場合はTrue。 |
owner_role_type |
オブジェクトを所有するロールのタイプ。例えば |
owner_role_type |
オブジェクトを所有するロールのタイプ。例えば |
例¶
マテリアライズドビューをすべて表示します。
SHOW MATERIALIZED VIEWS;
指定した正規表現に一致する名前を持つマテリアライズドビューのみを表示します。
SHOW MATERIALIZED VIEWS LIKE 'mv1%'; +-------------------------------+------+----------+---------------+-------------+------------+------+-------+----------------------+--------------------+-------------------+-------------------------------+--------------+----------+---------+----------------+-----------+---------+--------------------------------------------+-----------+----------------------+-----------------+ | created_on | name | reserved | database_name | schema_name | cluster_by | rows | bytes | source_database_name | source_schema_name | source_table_name | refreshed_on | compacted_on | owner | invalid | invalid_reason | behind_by | comment | text | is_secure | automatic_clustering | owner_role_type | |-------------------------------+------+----------+---------------+-------------+------------+------+-------+----------------------+--------------------+-------------------+-------------------------------+--------------+----------+---------+----------------+-----------+---------+--------------------------------------------+-----------|----------------------+-----------------| | 2018-10-05 17:13:17.579 -0700 | MV1 | | TEST_DB1 | PUBLIC | | 0 | 0 | TEST_DB1 | PUBLIC | INVENTORY | 2018-10-05 17:13:50.373 -0700 | NULL | SYSADMIN | false | NULL | 0s | | CREATE OR REPLACE MATERIALIZED VIEW mv1 AS | false | OFF | ROLE | | | | | | | | | | | | | | | | | | | | SELECT ID, price FROM inventory; | | | | | +-------------------------------+------+----------+---------------+-------------+------------+------+-------+----------------------+--------------------+-------------------+-------------------------------+--------------+----------+---------+----------------+-----------+---------+--------------------------------------------+-----------+----------------------+-----------------+