All Products
Search
Document Center

PolarDB:HASH-KEY

Last Updated:Mar 29, 2026

HASH-KEY adalah strategi partisi komposit yang menggabungkan partisi primer HASH dengan subpartisi KEY.

  • HASH partition: mendistribusikan baris berdasarkan expr, di mana expr harus berupa ekspresi integer.

  • KEY subpartition: mendistribusikan baris dalam setiap partisi berdasarkan daftar kolom.

Sintaks

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 adalah:

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

subpartition_definition adalah:

SUBPARTITION subpartition_name

Parameter

ParameterDeskripsi
table_nameNama tabel.
exprEkspresi partisi untuk klausa HASH. Harus bertipe INT. Tipe string tidak didukung.
partition_nameNama partisi. Harus unik dalam tabel.
subpartition_nameNama subpartisi. Harus unik dalam tabel.

Contoh

Contoh berikut membuat tabel partisi komposit dengan tiga partisi HASH pada dept_no dan dua subpartisi KEY pada country.

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