
# ALTER COLUMN
#### 命令功能
**ALTER TABLE ... ALTER COLUMN**语法用于修改当前Hudi表中列属性，包括列类型、列位置。
#### 命令语法
**ALTER TABLE** *tableName* **ALTER**
**\[COLUMN\]** *col_old_name* **TYPE** *column_type*
**\[FIRST\|AFTER\]** *column_name*
#### 参数描述
表1ALTER COLUMN参数描述 
| 参数           | 描述                                                        |
|:---|:---|
| tableName    | 表名。                                                       |
| col_old_name | 待修改的列名。                                                   |
| column_type  | 目标列类型。                                                    |
| column_name  | 位置修改参照列，例如：AFTER column_name的语义是要将待修改列放到参照列column_name之后。 |
   
#### 示例
- 列类型修改
  ```
  ALTER TABLE table1 ALTER COLUMN a.b.c TYPE bigint
  ```
  a.b.c表示嵌套列全路径，嵌套列具体规则见[ADD COLUMNS](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_24498.html)。
  当前类型修改支持：
  - int =\> long/float/double/string/decimal
  
  - long =\> float/double/string/decimal
  
  - float =\> double/String/decimal
  
  - double =\> String/Decimal
  
  - Decimal =\> Decimal/String
  
  - String =\> date/decimal
  
  - date =\> String
   
- 其他修改
  ```
  ALTER TABLE table1 ALTER COLUMN a.b.c DROP NOT NULL
  ALTER TABLE table1 ALTER COLUMN a.b.c FIRST
  ALTER TABLE table1 ALTER COLUMN a.b.c AFTER x
  ```
  a.b.c表示嵌套列全路径，嵌套列具体规则见[ADD COLUMNS](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_24498.html)。
  
 
#### 系统响应
通过运行**DESCRIBE**命令，可显示修改的列。
