
# 使用和管理分区表
分区表支持大部分非分区表的相关功能，具体请参见《参考》中常规表的各类操作语法相关资料。
除此之外，分区表还支持大量的分区级操作命令，包括分区级DQL/DML（如SELECT、INSERT、UPDATE、DELETE、UPSERT、MERGE INTO）、分区级DDL（如ADD、DROP、TRUNCATE、EXCHANGE、SPLIT、MERGE、MOVE、RENAME）、分区VACUUM/ANALYZE、分类分区索引等。
分区级操作命令一般通过指定分区名或者分区值的方式进行，比如语法命令可能是如下情形：
```
sql_action [ t_name ] { PARTITION | SUBPARTITION } { p_name | (p_name) };
sql_action [ t_name ] { PARTITION | SUBPARTITION } FOR (p_value);
```
通过指定分区名p_name或指定分区值p_value来定向操作某个特定分区，此时业务只会作用于对象分区，而不会影响其他任何分区。如果通过指定分区名p_name来执行业务，数据库会匹配p_name对应的分区，该分区不存在则业务抛出异常；如果通过指定分区值p_value来执行业务，数据库会匹配p_value值所属分区。
比如定义有如下的分区表：
```
gaussdb=# CREATE TABLE list_01
(
    id   INT,
    role VARCHAR(100),
    data VARCHAR(100)
)
PARTITION BY LIST (id)
(
    PARTITION p_list_1 VALUES(0,1,2,3,4),
    PARTITION p_list_2 VALUES(5,6,7,8,9),
    PARTITION p_list_3 VALUES(DEFAULT)
);
-- 删除表。
gaussdb=# DROP TABLE list_01;
```
指定分区业务中，PARTITION p_list_1与PARTITION FOR (4)等价，它们实际上指向同一个分区；同理，PARTITION p_list_3与PARTITION FOR (12)等价，同样代表同一个分区。
