ALTER TABLE PARTITIONAlter Table Partitions

ALTER TABLE table_name ADD [IF NOT EXISTS]
    (PARTITION part_spec [LOCATION path], ...)

part_spec:
    : (part_col_name1=val1, part_col_name2=val2, ...)

テーブルにパーティションを追加します。必要に応じて、パーティションごとにカスタムの場所を追加します。Add partitions to the table, optionally with a custom location for each partition added. これは、Hive 形式を使用して作成されたテーブルに対してのみサポートされます。This is supported only for tables created using the Hive format. ただし、Spark 2.1 以降では、datasource API を使用して定義されたテーブルに対しても Alter Table Partitions がサポートされます。However, beginning with Spark 2.1, Alter Table Partitions is also supported for tables defined using the datasource API.

IF NOT EXISTS

指定したパーティションが既に存在する場合は、何も起こりません。If the specified partitions already exist, nothing happens.

ALTER TABLE table_name PARTITION part_spec RENAME TO PARTITION part_spec

part_spec:
    : (part_col_name1=val1, part_col_name2=val2, ...)

パーティションのパーティションフィールドの値を変更します。Change the partitioning field values of a partition. この操作は、Hive 形式を使用して作成されたテーブルに対してのみ許可されます。This operation is allowed only for tables created using the Hive format.

ALTER TABLE table_name DROP [IF EXISTS] (PARTITION part_spec, ...)
part_spec:
    : (part_col_name1=val1, part_col_name2=val2, ...)

テーブルまたはビューからパーティションを削除します。Drop a partition from a table or view. この操作は、Hive 形式を使用して作成されたテーブルに対してのみ許可されます。This operation is allowed only for tables created using the Hive format.

IF EXISTS

指定したパーティションが存在しない場合は、何も起こりません。If the specified partition does not exists, nothing happens.

ALTER TABLE table_name PARTITION part_spec SET LOCATION path

part_spec:
    : (part_col_name1=val1, part_col_name2=val2, ...)

指定したパーティションの場所を設定します。Set the location of the specified partition. 個々のパーティションの場所の設定は、Hive 形式を使用して作成されたテーブルに対してのみ許可されます。Setting the location of individual partitions is allowed only for tables created using the Hive format.