メインコンテンツまでスキップ
バージョン: 4.x

REFRESH MATERIALIZED VIEW

デスクリプション

このステートメントは、指定されたasynchronous materialized viewを手動でリフレッシュするために使用されます

Syntax

REFRESH MATERIALIZED VIEW <mv_name> <refresh_type>

項目:

refresh_type
: { <partitionSpec> | COMPLETE | AUTO }
partitionSpec
: PARTITIONS (<partition_name> [, <partition_name> [, ... ] ])

必須パラメータ

1. <mv_name>

マテリアライズドビュー名を指定します。

マテリアライズドビュー名は文字で始まる必要があり(unicode name supportが有効な場合は任意の言語の文字)、スペースや特殊文字を含むことはできません。ただし、マテリアライズドビュー名全体がバッククォートで囲まれている場合は例外です(例:My Object)。

マテリアライズドビュー名は予約キーワードを使用できません。

詳細については、Reserved Keywordsを参照してください。

2. <refresh_type>

このマテリアライズドビューのリフレッシュタイプを指定します。

リフレッシュタイプは、partitionSpec、COMPLETE、またはAUTOのいずれかです。

オプションパラメータ

1. <partition_name>

パーティションをリフレッシュする際のパーティション名を指定します。

アクセス制御要件

このSQLコマンドを実行するユーザーは、少なくとも以下の権限を持つ必要があります:

PrivilegeObject注釈
ALTER_PRIVMaterialized ViewREFRESHはマテリアライズドビューに対するALTER操作です

使用上の注意

  • AUTO:計算によってマテリアライズドビューのどのパーティションがベースTableと同期されていないかを判断します。(現在、ベースTableが外部Tableの場合、マテリアライズドビューと常に同期されているとみなされます。そのため、ベースTableが外部Tableの場合は、COMPLETEを指定するか、リフレッシュするパーティションを指定する必要があります)。その後、該当するパーティションを適宜リフレッシュします。
  • COMPLETE:パーティションがベースTableと同期されているかどうかをチェックせずに、マテリアライズドビューのすべてのパーティションを強制的にリフレッシュします。
  • partitionSpec:パーティションがベースTableと同期されているかどうかをチェックせずに、指定されたパーティションを強制的にリフレッシュします。

  • マテリアライズドビューmv1をリフレッシュする(リフレッシュするパーティションを自動計算)

    REFRESH MATERIALIZED VIEW mv1 AUTO;
  • p_19950801_19950901 および p_19950901_19951001 という名前のパーティションを更新する

    REFRESH MATERIALIZED VIEW mv1 partitions(p_19950801_19950901,p_19950901_19951001);
  • すべてのマテリアライズドビューデータの強制更新

    REFRESH MATERIALIZED VIEW mv1 complete;