本文档介绍了创建HASH-KEY分区表的方法。

语法

创建一个或多个HASH-KEY分区表,其中每个分区可能有一个或一个以上的子分区:
CREATE TABLE [ schema. ]table_name
 table_definition
   PARTITION BY [LINEAR] HASH(expr) [PARTITIONS num]
   SUBPARTITION BY [LINEAR] KEY(expr) [SUBPARTITIONS sub_num]
   (partition_definition [, partition_definition] ...)
其中,partition_definition为:
 PARTITION partition_name
        (subpartition_definition [, subpartition_definition] ...)
subpartition_definition为:
SUBPARTITION subpartition_name

参数

参数名称 参数说明
table_name 要创建的表名称。
expr 分区字段表达式,目前只支持INT类型,不支持字符类型。
partition_name 分区名称,同一个表中不可重复。
subpartition_name 子分区名称,同一个表中不可重复。

示例

HASH-KEY类型的使用示例:
CREATE TABLE sales_hash_key
(
  dept_no     INT,
  part_no     INT,
  country     varchar(20),
  date        DATE,
  amount      INT
)
   PARTITION BY HASH(month(date))
   SUBPARTITION BY KEY(part_no) (
    PARTITION m0 (
           SUBPARTITION d0,
           SUBPARTITION d1
       ),
    PARTITION m1 (
           SUBPARTITION d2,
           SUBPARTITION d3
       ),
    PARTITION m2 (
           SUBPARTITION d4,
           SUBPARTITION d5
           )
       );