更新时间:2022-08-12 GMT+08:00

修改表分区位置(只支持OBS表)

功能描述

修改表分区的位置。

语法格式

1
2
3
ALTER TABLE table_name
  PARTITION partition_specs
  SET LOCATION obs_path;

关键字

  • PARTITION:分区。
  • LOCATION:分区路径。

参数说明

表1 参数描述

参数

描述

table_name

表名称。

partition_specs

分区字段。

obs_path

OBS存储路径。

注意事项

  • 所要修改位置的表分区必须是已经存在的,否则将报错。
  • “partition_specs”中的参数默认带有“( )”,例如:PARTITION (dt='2009-09-09',city='xxx')
  • 所指定的新的OBS路径必须是已经存在的绝对路径,否则将报错。
  • 若新增分区指定的路径包含子目录(或嵌套子目录),则子目录下面的所有文件类型及内容也将作为该分区的记录。用户需要保证该分区目录下所有文件类型和文件内容与表的字段一致,否则查询将报错。

示例

将student表的分区dt='2008-08-08',city='xxx'的OBS路径设置为“obs://bucketName/fileName/student/dt=2008-08-08/city=xxx”

1
2
3
ALTER TABLE student
  PARTITION(dt='2008-08-08',city='xxx')
  SET LOCATION 'obs://bucketName/fileName/student/dt=2008-08-08/city=xxx';