このトピックでは、ハッシュ範囲パーティションテーブルを作成する方法について説明します。
構文
次のステートメントを使用して、各パーティションに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)
)
);