全部產品
Search
文件中心

PolarDB:LIST

更新時間:Jul 06, 2024

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

文法

建立LIST分區表。枚舉類型分區,需要把每個分區的分區鍵的值枚舉出來,枚舉值不能重複。支援擴充類型LIST COLUMNS。

CREATE TABLE ... PARTITION BY LIST {(expr) | COLUMNS(column_list)}
(partition_definition [, partition_definition] ...);

其中partition_definition為

PARTITION partition_name
    VALUES IN (value_list)

參數

參數名稱

參數說明

expr

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

column_list

LIST COLUMNS類型使用,分區欄位列表,不支援運算式。

value_list

欄位的邊界值。

partition_name

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

描述

LIST支援運算式,LIST運算式傳回型別必須是INT類型。

LIST僅支援單列分區鍵。

LIST COLUMNS不支援運算式,但支援列。

LIST COLUMNS支援多列分區鍵。LIST COLUMNS支援多種類型的分區鍵,包括INT類型、字元類型、DATE類型、DATETIME等類型。

樣本

LIST類型的使用樣本:

CREATE TABLE sales_list
(
  dept_no     INT,
  part_no     INT,
  country     varchar(20),
  date        DATE,
  amount      INT
)
PARTITION BY LIST (amount)
(
  PARTITION p0 VALUES in (1, 2),
  PARTITION p1 VALUES in (3, 4),
  PARTITION p2 VALUES in (5, 6)
);

LIST COLUMNS類型的使用樣本:

CREATE TABLE sales_list_columns
(
  dept_no     INT,
  part_no     INT,
  country     varchar(20),
  date        DATE,
  amount      INT
)
PARTITION BY LIST COLUMNS(country)
(
  PARTITION europe VALUES in ('FRANCE', 'ITALY'),
  PARTITION asia VALUES in ('INDIA', 'PAKISTAN'),
  PARTITION americas VALUES in ('US', 'CANADA')
);