全部產品
Search
文件中心

PolarDB:HASH-LIST

更新時間:Jul 06, 2024

本文檔介紹了建立HASH-LIST分區表的方法。

文法

建立一個或多個HASH-LIST分區表,其中每個分區可能有一個或一個以上的子分區:

CREATE TABLE [ schema. ]table_name
 table_definition
 PARTITION BY [LINEAR] HASH(expr)
   SUBPARTITION BY LIST (expr)
   (partition_definition [, partition_definition] ...)

其中,partition_definition為:

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

subpartition_definition為:

SUBPARTITION subpartition_name
     VALUES IN (value_list)

參數

參數名稱

參數說明

table_name

要建立的表名稱。

expr

分區欄位運算式,目前只支援INT類型,不支援字元類型。

value_list

欄位的值。

partition_name

分區名稱,同一個表中不可重複。

subpartition_name

子分區名稱,同一個表中不可重複。

樣本

HASH-LIST類型的使用樣本:

CREATE TABLE sales_hash_list
(
  dept_no     INT,
  part_no     INT,
  country     varchar(20),
  date        DATE,
  amount      INT
)
PARTITION BY HASH(dept_no)
SUBPARTITION BY LIST(part_no)
(
PARTITION dp0 (
     		SUBPARTITION p0 VALUES in (1, 2),
  			SUBPARTITION p1 VALUES in (3, 4),
  			SUBPARTITION p2 VALUES in (5, 6)
  ),
  PARTITION dp1
  (
   			SUBPARTITION p3 VALUES in (1, 2),
  			SUBPARTITION p4 VALUES in (3, 4),
  			SUBPARTITION p5 VALUES in (5, 6)
  ),
  PARTITION dp2
  (
    		SUBPARTITION p6 VALUES in (1, 2),
  			SUBPARTITION p7 VALUES in (3, 4),
  			SUBPARTITION p8 VALUES in (5, 6)
  )
);