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

PolarDB:ALTER TABLE... ドロップSUBPARTITION

最終更新日:Oct 21, 2024

ALTER TABLEを使用できます... サブパーティション定義とそのサブパーティションに格納されているデータを削除するDROP SUBPARTITIONコマンド。

概要

ALTER TABLEを使用できます... サブパーティション定義とそのサブパーティションに格納されているデータを削除するDROP SUBPARTITIONコマンド。 構文:

ALTER TABLE table_name DROP SUBPARTITION subpartition_name;

説明

ALTER TABLE... DROP SUBPARTITIONコマンドは、サブパーティションとサブパーティションに格納されているデータを削除します。 DROP SUBPARTITION句を使用するには、パーティショニングルートの所有者であるか、テーブルを所有するグループのメンバーであるか、スーパーユーザーまたは管理者権限を持っている必要があります。

パラメーター

パラメーター

説明

table_name

パーティションテーブルの名前 (オプションでスキーマ修飾) 。

subpartition_name

削除するサブパーティションの名前。

例-サブパーティションの削除

次の例では、salesテーブルのサブパーティションを削除します。 次のコマンドを実行して、salesテーブルを作成します。

CREATE TABLE sales
(
  dept_no     number,
  part_no     varchar2,
  country     varchar2(20),
  date    date,
  amount  number
)
PARTITION BY RANGE(date)
  SUBPARTITION BY LIST (country)
  (
    PARTITION first_half_2012 VALUES LESS THAN('01-JUL-2012')
    (
      SUBPARTITION europe VALUES ('ITALY', 'FRANCE'),
      SUBPARTITION americas VALUES ('CANADA', 'US'),
      SUBPARTITION asia VALUES ('PAKISTAN', 'INDIA')
    ),
    PARTITION second_half_2012 VALUES LESS THAN('01-JAN-2013') 
  );

ALL_TAB_SUBPARTITIONSビューに照会すると、サブパーティション名が表示されます。

acctg=# SELECT subpartition_name, high_value FROM ALL_TAB_SUBPARTITIONS;
 subpartition_name |     high_value       
-------------------+---------------------
 europe            | 'ITALY', 'FRANCE'   
 americas          | 'CANADA', 'US'      
 asia              | 'PAKISTAN', 'INDIA' 
(3 rows)

salesテーブルからamericasサブパーティションを削除するには、次のコマンドを実行します。

ALTER TABLE sales DROP SUBPARTITION americas;

ALL_TAB_SUBPARTITIONSビューのクエリは、サブパーティションが正常に削除されたことを示しています:

acctg=# SELECT subpartition_name, high_value FROM ALL_TAB_SUBPARTITIONS;
 subpartition_name |     high_value      
-------------------+---------------------
 europe            | 'ITALY', 'FRANCE'
 asia              | 'PAKISTAN', 'INDIA'
(2 rows)