すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ハッシュ-レンジ

最終更新日:May 24, 2024

このトピックでは、ハッシュ範囲パーティションテーブルを作成する方法について説明します。

構文

次のステートメントを使用して、各パーティションに1つ以上のサブパーティションを含めることができる1つ以上のハッシュ範囲パーティションテーブルを作成します。

CREATE TABLE [スキーマ] 。 ] table_name
 table_definition
   [LINEAR] HASHによるパーティー (expr)
   範囲によるサブパーティー (expr)
   (partition_definition [, partition_definition] ...) 

partition_definitionは次のとおりです。

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

subpartition_definitionは次のとおりです。

SUBPARTITION subpartition_name
             {value | MAXVALUE} 
より少ない値

パラメーター

パラメーター

説明

table_name

テーブルの名前。

expr

パーティションの式。 INTタイプである必要があります。 string型はサポートされていません。

value

パーティションの境界値。

MAXVALUE

パーティションの最大値。

partition_name

パーティションの名前。 名前はテーブル内で一意である必要があります。

subpartition_name

サブパーティションの名前。 名前はテーブル内で一意である必要があります。

ハッシュ範囲分割テーブルを作成します。

CREATE TABLE sales_hash_range
(
  dept_no INT、
  part_no INT,
  国varchar(20) 、
  日付,
  金額INT
)
PARTITION BY HASH(dept_no)
範囲によるSUBPARTITION (part_no)
(
PARTITION p0 (
    サブパートs0の値は (4) よりも少なく、
    サブマウントs1の値がより少ない (7) 、
    サブパートs2の値は (10) よりも少なく、
    サブパートs3の値がより少ない (13)
  ),
  パーティーp1
  (
    サブパートs4の値は (4) よりも少なく、
    サブパートs5の値は以下 (7) 、
    下位区分s6の値は (10) より少なく、
    サブパートs7の値がより少ない (13)
  ),
  パーティーp2
  (
    サブパートs8の値は (4) よりも少なく、
    下位区分s9の値は以下 (7) 、
    サブパートs10の値は (10) よりも少なく、
    サブパートs11の値がより少ない (13)
  )
);