次の方法で共有


ALTER MATERIALIZED VIEW

適用対象: Databricks SQL

ビューに関連付けられたメタデータを変更します。

次のいずれかのアクションを実行できます。

  • 既存の具体化されたビューを更新するためのスケジュールを追加します。
  • 具体化されたビューの既存の更新スケジュールを変更します。
  • 具体化されたビューの更新スケジュールを削除します。 スケジュールが削除された場合、最新のデータを反映するには、オブジェクトを手動で更新する必要があります。

ビューまたはその列にコメントを追加または変更するには、COMMENT ONを使用します。

構文

ALTER MATERIALIZED VIEW view_name
  { schedule |
    ALTER COLUMN clause |
    SET ROW FILTER clause |
    DROP ROW FILTER |
    SET TAGS clause |
    UNSET TAGS clause }

schedule
  {
    { ADD | ALTER } SCHEDULE [ REFRESH ]
      schedule_clause |
    DROP SCHEDULE
  }

  schedule_clause
    { EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
    CRON cron_string [ AT TIME ZONE timezone_id ] }

パラメーター

  • SCHEDULE [ REFRESH ]スケジュール条項

    具体化されたビューにスケジュールを追加したり、スケジュールを変更したりできます。

    • EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }

      定期的に更新をスケジュールするには、 EVERY 構文を使用します。 EVERY構文が指定されている場合、ストリーミング テーブルまたは具体化されたビューは、指定された値 (HOURHOURSDAYDAYSWEEKWEEKSなど) に基づいて、指定した間隔で定期的に更新されます。 次の表に、 numberに使用できる整数値を示します。

      時間単位 整数値
      HOUR or HOURS 1 <= H <= 72
      DAY or DAYS 1<= D<= 31
      WEEK or WEEKS 1 <= W <= 8

      含まれる時間単位の単数形と複数形は、意味的に同等です。

    • CRON cron_string [ AT TIME ZONE timezone_id ]

      quartz cron 値を使用して更新をスケジュールします。 有効な time_zone_values が受け入れられます。 AT TIME ZONE LOCAL はサポートされません。

      AT TIME ZONE が存在しない場合は、セッション タイム ゾーンが使用されます。 AT TIME ZONE が存在せず、セッション タイム ゾーンも設定されていない場合は、エラーがスローされます。 SCHEDULE は意味的に SCHEDULE REFRESH と同等です。

  • 変更 COLUMN

    重要

    この機能はパブリック プレビュー段階にあります。

    列のプロパティを変更します。

  • SET ROW FILTER 句

    重要

    この機能はパブリック プレビュー段階にあります。

    具体化されたビューに行フィルター関数を追加します。 具体化されたビューに対する後続のすべてのクエリは、関数がTRUEというブール値に評価される行のサブセットを取得します。 これは、関数が呼び出し元ユーザーの ID またはグループ メンバーシップを検査して、特定の行をフィルター処理するかどうかを決定できる、きめ細かいアクセス制御に役立ちます。

  • DROP ROW FILTER

    重要

    この機能はパブリック プレビュー段階にあります。

    具体化されたビュー (ある場合) から行フィルターを削除します。 今後のクエリでは、自動のフィルタリングなしにテーブルからすべての行が返されます。

  • SET TAGS ( { tag_name = tag_value } [, ...] )

    重要

    この機能はパブリック プレビュー段階にあります。

    具体化されたビューにタグを適用します。 具体化されたビューにタグを追加するには、 APPLY TAG アクセス許可が必要です。

    • tag_name

      文字通りの STRINGtag_nameは、具体化されたビューまたは列内で一意である必要があります。

    • tag_value

      文字通りの STRING

  • UNSET TAGS ( tag_name [, ...] )

    重要

    この機能はパブリック プレビュー段階にあります。

    具体化されたビューからタグを削除します。 具体化されたビューからタグを削除するには、 APPLY TAG アクセス許可が必要です。

    • tag_name

      文字通りの STRINGtag_nameは、具体化されたビューまたは列内で一意である必要があります。

  -- Adds a schedule to refresh a materialized view once a day
  -- at midnight in Los Angeles
  > ALTER MATERIALIZED VIEW my_mv
      ADD SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';

  -- Alters the schedule to run every two hours for a materialized view
  > ALTER MATERIALIZED VIEW my_mv
      ALTER SCHEDULE EVERY 2 HOURS;

  -- Drops the schedule for a materialized view
  > ALTER MATERIALIZED VIEW my_mv
      DROP SCHEDULE;