All Products
Search
Document Center

PolarDB:KEY-HASH

Last Updated:Feb 06, 2024

This topic describes how to create a key-hash partitioned table.

Syntax

The following statement is used to create one or more key-hash partitioned table where each partition may contain one or more subpartitions:

CREATE TABLE [ schema. ]table_name
 table_definition
   PARTITION BY [LINEAR] KEY(expr) [PARTITIONS num]
   SUBPARTITION BY [LINEAR] HASH(expr) [SUBPARTITIONS sub_num]
   (partition_definition [, partition_definition] ...)

partition_definition is:

 PARTITION partition_name
        (subpartition_definition [, subpartition_definition] ...)

subpartition_definition is:

SUBPARTITION subpartition_name

Parameters

Parameter

Description

table_name

The name of the table.

expr

The expression of the partition. It must be of the INT type. The string type is not supported.

partition_name

The name of the partition. The name must be unique within the table.

subpartition_name

The name of the subpartition. The name must be unique within the table.

Examples

Create a key-hash partitioned table:

CREATE TABLE sales_key_hash
(
  dept_no     varchar(20),
  part_no     INT,
  country     varchar(20),
  date        DATE,
  amount      INT
)
   PARTITION BY KEY(dept_no) PARTITIONS 3
   SUBPARTITION BY HASH(part_no) SUBPARTITIONS 2
;