ALTER TABLE … PARTITION
適用対象: Databricks SQL
Databricks Runtime
tableのパーティションを追加、削除、名前変更、または回復します。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
ALTER TABLE table_name
{ ADD PARTITION clause |
DROP PARTITION clause |
PARTITION SET LOCATION clause |
RENAME PARTITION clause |
RECOVER PARTITIONS clause }
ADD PARTITION
clause
tableに 1 つ以上のパーティションを追加します。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]
Parameters
IF NOT EXISTS
partition が既に存在する場合にステートメントを無視するように Azure Databricks に指示する省略可能な句。
-
partitionを追加します。 partition キーは、table のパーティション分割と一致し、valuesに関連付ける必要があります。 partition が既に存在する場合は、
IF NOT EXISTS
が指定されていない限り、エラーが発生します。 LOCATION path
path
は、partitionを指す省略可能な場所を表すSTRING
リテラルである必要があります。場所が指定されていない場合、場所は table の場所と partition キーから派生します。
場所にファイルが存在する場合、それらは partition を占有し、table の
data_source
とそのオプションと互換性がある必要があります。
DROP PARTITION
clause
tableから 1 つ以上のパーティションを削除し、必要に応じてパーティションの場所にあるファイルを削除します。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]
Parameters
IF EXISTS
IF EXISTS
を指定すると、Azure Databricks では存在しないパーティションを削除しようとしても無視されます。 それ以外の場合、存在しないパーティションによってエラーが発生します。-
partition を削除対象として指定します。 partition が部分的にしか識別されていない場合は、パーティションのスライスが削除されます。
PURGE
setした場合、catalogで構成されている場合でも、table catalogは、ごみ箱フォルダーをスキップしてpartition データをremoveする必要があります。 このオプションは、マネージド tablesにのみ適用されます。 次の場合にのみ有効です。
ファイル システムはごみ箱フォルダーをサポートしています。 削除された partition をごみ箱フォルダーに移動するために、catalog が構成されています。 AWS S3 にはごみ箱フォルダーがないため、有効ではありません。
パーティションを削除した後、手動でファイルを削除する必要はありません。
RENAME PARTITION
clause
partitionのキーを置き換えます。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
from_partition_clause RENAME TO to_partition_clause
Parameters
-
名前が変更される partition の定義。
-
この partitionの新しい定義。 同じキーを持つ partition がまだ存在してはなりません。
RECOVER PARTITIONS
clause
この句は Delta Lake tablesには適用されません。
tableの場所をスキャンし、ファイル システムに直接追加されたファイルを table に追加するように Azure Databricks に指示します。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
RECOVER PARTITIONS
Parameters
なし
PARTITION SET LOCATION 句
partitionの位置を移動します。
Delta Lake tablesでは、パーティションの管理はサポートされていません。
構文
PARTITION clause SET LOCATION path
Parameters
-
場所を変更するpartitionを識別します。
LOCATION path
path
は、STRING
リテラルを指定する必要があります。 partitionの新しい場所を指定します。元の場所にあるファイルは、新しい場所に移動されません。
例
ALTER TABLEの例を参照してください。