共用方式為


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 子句

將一或多個分割區新增至數據表。

Delta Lake 數據表不支援管理分割區。

語法

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 子句

從數據表卸除一或多個分割區,選擇性地刪除分割區位置的任何檔案。

Delta Lake 數據表不支援管理分割區。

語法

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

參數

  • IF EXISTS

    當您指定 IF EXISTS Azure Databricks 時,會忽略嘗試刪除不存在的分區。 否則,不存在的分割區會造成錯誤。

  • PARTITION 子句

    指定要刪除的分區。 如果分割區只有部分識別,則會刪除部分分割區。

  • PURGE

    如果已設定,即使目錄已設定了垃圾桶資料夾,表目錄仍必須略過垃圾桶資料夾以移除分區數據。 此選項僅適用於 Managed 資料表。 只有當符合下列條件時:

    檔案系統支援垃圾桶資料夾。 資料目錄已設定為將刪除的分區移至垃圾資料夾。 AWS S3 中沒有垃圾桶資料夾,因此無效。

    卸除分割區之後,不需要手動刪除檔案。

RENAME PARTITION 子句

取代分割區的鍵值。

Delta Lake 數據表不支援管理分割區。

語法

from_partition_clause RENAME TO to_partition_clause

參數

RECOVER PARTITIONS 子句

這個子句不適用於 Delta Lake 數據表。

指示 Azure Databricks 掃描數據表的位置,並將任何檔案新增至已直接新增至文件系統的數據表。

Delta Lake 數據表不支援管理分割區。

語法

RECOVER PARTITIONS

參數

PARTITION SET LOCATION 子句

移動分區的位置。

Delta Lake 數據表不支援管理分割區。

語法

PARTITION clause SET LOCATION path

參數

  • PARTITION 子句

    要變更位置的分割區識別。

  • LOCATION path

    path 必須是 STRING 文字表達式。 指定分割區的新位置。

    原始位置中的檔案將不會移至新位置。

範例

請參閱 ALTER TABLE範例。