
# 重命名分区
#### 功能描述
修改OBS分区表中某个分区的分区值。该命令仅支持操作OBS表，不支持对管理表进行操作。
#### 语法格式
```
ALTER TABLE table_name
   PARTITION partition_specs
   RENAME TO PARTITION partition_specs;
```
#### 参数说明
| **参数**              | **描述**                                                                                    |
|:---|:---|
| **table_name**      | 表名称。                                                                                      |
| **partition_specs** | 分区规格，格式为 (col1=val1, col2=val2, ...)。RENAME TO 前为原分区值，后为新分区值。若分区表有多个分区列，需指定所有分区列的值，顺序可任意。 |
   
#### 注意事项
- 该命令仅支持操作OBS表，不支持对管理表进行操作。
- 所要重命名分区的表和分区必须已存在，否则会出错。新分区名不能与其他分区重名，否则将出错。
- 若分区表是按照多个字段进行分区的，重命名分区时需要指定所有的分区字段，指定字段的顺序可任意。
- partition_specs 中的参数默认带有 ( )，例如：PARTITION (dt='2009-09-09', city='xxx')。
 
#### 示例1：单分区列重命名
将表 log_data 中分区 year=2023 重命名为 year=2024。
```
ALTER TABLE log_data
  PARTITION (year='2023')
  RENAME TO PARTITION (year='2024');
```
#### 示例2：多分区列重命名
将表 student 中分区 city='city1', dt='2023-01-01' 重命名为 city='city2', dt='2023-06-01'。
```
ALTER TABLE student
  PARTITION (city='city1', dt='2023-01-01')
  RENAME TO PARTITION (city='city2', dt='2023-06-01');
```
#### 示例3：日期分区重命名
将表 sales 中日期分区 dt='2023-12-31' 重命名为 dt='2024-01-01'。
```
ALTER TABLE sales
  PARTITION (dt='2023-12-31')
  RENAME TO PARTITION (dt='2024-01-01');
```
#### 示例4：分区值变更（仅修改部分分区列值）
将表 event_log 中分区 region='east', type='click' 重命名为 region='west', type='click'，仅修改 region 列值。
```
ALTER TABLE event_log
  PARTITION (region='east', type='click')
  RENAME TO PARTITION (region='west', type='click');
```
