メインコンテンツまでスキップ

MATERIALIZED VIEWを更新

説明

このステートメントは、指定された非同期マテリアライズドビューを手動で更新するために使用されます

構文

REFRESH MATERIALIZED VIEW <mv_name> <refresh_type>

ここで:

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

必須パラメータ

1. <mv_name>

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

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

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

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

2. <refresh_type>

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

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

オプションパラメータ

1. <partition_name>

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

アクセス制御要件

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

権限オブジェクト備考
ALTER_PRIVMaterialized ViewREFRESHはマテリアライズドビューに対するALTER操作です

使用上の注意

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

  • マテリアライズドビュー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;