プライマリ・コンテンツに移動
Oracle® Database VLDBおよびパーティショニング・ガイド
12c リリース1 (12.1)
B71291-10
目次へ移動
目次
索引へ移動
索引

前
次

* - レンジ・パーティションの分割

* - レンジ・パーティション表のパーティションの分割は、「レンジ・パーティション表のパーティションの分割」での説明と似ています。新しいパーティションのいずれにも、サブパーティションのレンジ値を指定できません。新しいパーティションは、分割元のパーティションからサブパーティションの説明を継承します。

次の例では、時間隔 - レンジ・パーティション表ordersの2007年5月の時間隔パーティションを分割します。

ALTER TABLE orders
    SPLIT PARTITION FOR(TO_DATE('01-MAY-2007','dd-MON-yyyy'))
    AT (TO_DATE('15-MAY-2007','dd-MON-yyyy'))
    INTO (PARTITION p_fh_may07,PARTITION p_sh_may2007);

この操作により、時間隔パーティションFOR('01-MAY-2007')が、p_fh_may07およびp_sh_may_2007の2つの結果のパーティションに分割されます。どちらのパーティションも、元のパーティションからサブパーティションの説明を継承します。「時間隔パーティションのマージ」で説明されているように、2007年6月のパーティションより前の時間隔パーティションはレンジ・パーティションに変換されます。

ALTER TABLE SPLIT PARTITION文には、コンポジット・パーティション表のパーティションを分割した結果のサブパーティションに、明示的に名前を付ける方法がありません。ただし、partition name_subpartition nameという書式の名前が付けられた親パーティションのサブパーティションには、データベースにより、新規に作成されたサブパーティションに新しいパーティション名を使用して対応する名前が生成されます。その他すべてのサブパーティションには、SYS_SUBPnという書式のシステム生成の名前が割り当てられます。システム生成の名前は、名前が指定されていないパーティションを分割した結果のサブパーティションにも割り当てられます。名前が付けられていないパーティションには、SYS_Pnという書式のシステム生成のパーティション名が割り当てられます。

次の問合せでは、表ordersに対する前のパーティション分割操作で生成されたサブパーティション名と上限値が表示されます。表が作成されてから、この章でこれまでに実行された他の操作の結果も反映しています。

BREAK ON partition_name

SELECT partition_name, subpartition_name, high_value
FROM user_tab_subpartitions
WHERE table_name = 'ORCERS'
ORDER BY partition_name, subpartition_position;

PARTITION_NAME            SUBPARTITION_NAME              HIGH_VALUE
------------------------- ------------------------------ ---------------
P_BEFORE_2007             P_BEFORE_2007_P_SMALL          1000
                          P_BEFORE_2007_P_MEDIUM         10000
                          P_BEFORE_2007_P_LARGE          100000
                          P_BEFORE_2007_P_EXTRAORDINARY  MAXVALUE
P_FH_MAY07                SYS_SUBP2985                   1000
                          SYS_SUBP2986                   10000
                          SYS_SUBP2987                   100000
                          SYS_SUBP2988                   MAXVALUE
P_PRE_MAY_2007            P_PRE_MAY_2007_P_SMALL         1000
                          P_PRE_MAY_2007_P_MEDIUM        10000
                          P_PRE_MAY_2007_P_LARGE         100000
                          P_PRE_MAY_2007_P_EXTRAORDINARY MAXVALUE
P_SH_MAY2007              SYS_SUBP2989                   1000
                          SYS_SUBP2990                   10000
                          SYS_SUBP2991                   100000
                          SYS_SUBP2992                   MAXVALUE