ALTER TABLE PARTITION

適用対象: 「はい」のチェック マーク Databricks SQL Databricks Runtime

テーブルのパーティションを追加、削除、名前変更、または復旧します。

Delta Lake テーブルでは、パーティションの管理はサポートされていません。

構文

ALTER TABLE table_name
   { ADD PARTITION clause |
     DROP PARTITION clause |
     PARTITION SET LOCATION clause |
     RENAME PARTITION clause |
     RECOVER PARTITIONS clause }

ADD PARTITION clause

テーブルに 1 つまたは複数のパーティションが追加されます。

構文

ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]

パラメーター

  • IF NOT EXISTS

    パーティションが既に存在する場合に、ステートメントを無視するように Azure Databricks に指示する省略可能な句。

  • PARTITION 句

    追加するパーティション。 パーティション キーは、テーブルのパーティション分割と一致し、値に関連付けられている必要があります。 パーティションが既に存在する場合は、IF NOT EXISTS が指定されていない限り、エラーが発生します。

  • LOCATION path

    path は、パーティションを指すオプションの場所を表す STRING リテラルである必要があります。

    場所が指定されていない場合、場所はテーブルの場所とパーティション キーから派生します。

    その場所にファイルが存在する場合は、パーティションを設定し、テーブルとそのオプションの data_source と互換性がある必要があります。

DROP PARTITION clause

テーブルから 1 つまたは複数のパーティションが削除されます。必要に応じて、パーティションの場所にあるファイルも削除されます。

構文

DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]

パラメーター

  • IF EXISTS

    IF EXISTS を指定すると、Azure Databricks では存在しないパーティションを削除しようとしても無視されます。 それ以外の場合、存在しないパーティションによってエラーが発生します。

  • PARTITION 句

    削除するパーティションを指定します。 パーティションが部分的に識別される場合は、パーティションのスライスが削除されます。

  • PURGE

    設定すると、カタログで構成されている場合でも、テーブル カタログは、ごみ箱フォルダーをスキップしてパーティション データを削除する必要があります。 このオプションは、管理対象テーブルにのみ適用できます。 次の場合にのみ有効です。

    ファイル システムはごみ箱フォルダーをサポートしています。 カタログは、削除されたパーティションをごみ箱フォルダーに移動するように構成されています。 AWS S3 にはごみ箱フォルダーがないため、有効ではありません。

    パーティションを削除した後、手動でファイルを削除する必要はありません。

RENAME PARTITION clause

パーティションのキーを置き換えます。

構文

from_partition_clause RENAME TO to_partition_clause

パラメーター

  • from_partition_clause

    名前を変更するパーティションの定義。

  • to_partition_clause

    このパーティションの新しい定義。 同じキーを持つパーティションは、既に存在していてはなりません。

RECOVER PARTITIONS clause

この句は、Delta Lake テーブルには適用されません。

テーブルの場所をスキャンし、ファイルシステムに直接追加されたテーブルにファイルを追加するように Azure Databricks に指示します。

構文

RECOVER PARTITIONS

パラメーター

なし

PARTITION SET LOCATION 句

パーティションの場所を移動します。

構文

PARTITION clause SET LOCATION path

パラメーター

  • PARTITION 句

    場所を変更するパーティションを識別します。

  • LOCATION path

    path は、STRING リテラルを指定する必要があります。 パーティションの新しい場所を指定します。

    元の場所にあるファイルは、新しい場所に移動されません

「ALTER TABLE」の「例」を参照してください。