All Products
Search
Document Center

PolarDB:Hash\-hash

Last Updated:Mar 29, 2026

Partisi hash-hash membagi sebuah tabel menjadi partisi menggunakan fungsi hash, kemudian membagi setiap partisi tersebut menjadi subpartisi dengan fungsi hash kedua.

Sintaksis

CREATE TABLE [schema.]table_name
  table_definition
  PARTITION BY [LINEAR] HASH(expr) [PARTITIONS num]
  SUBPARTITION BY [LINEAR] HASH(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. Harus mengembalikan nilai INT. Tipe string tidak didukung.
numJumlah partisi. Hanya berlaku untuk partisi hash atau key.
sub_numJumlah subpartisi. Hanya berlaku untuk subpartisi hash atau key.
partition_nameNama partisi. Harus unik dalam tabel.
subpartition_nameNama subpartisi. Harus unik dalam tabel.

Contoh

Pemberian nama subpartisi secara implisit

Bentuk paling sederhana memungkinkan PolarDB memberi nama subpartisi secara otomatis:

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