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

MaxCompute:TRUNCATE

最終更新日:Dec 13, 2024

指定されたテーブルからデータを消去します。

パーティション分割されていないテーブルからデータを消去する

指定された非パーティションテーブルからデータをクリアします。 パーティションテーブルの1つ以上のパーティションからデータをクリアする方法の詳細については、「パーティションからデータをクリアする」をご参照ください。

  • 構文

    truncate table <table_name>;
  • パラメーター

    table_name: 必須です。 データを消去するパーティション分割されていないテーブルの名前。

パーティションからデータを消去する

パーティションテーブルの指定されたパーティションからデータをクリアします。

MaxComputeでは、指定されたフィルター条件を満たすパーティション内のデータを消去できます。 フィルタ条件を満たす1つ以上のパーティションを一度に削除する場合は、式を使用して条件を指定し、条件を使用してパーティションを一致させ、一致したパーティションからデータを消去します。

  • 構文

    • フィルター条件が指定されていません。

      truncate table <table_name> partition <pt_spec>[, partition <pt_spec>....];
    • フィルター条件が指定されています。

      truncate table <table_name> partition <partition_filtercondition>;
  • パラメーター

    • table_name: 必須です。 パーティションデータをクリアするパーティションテーブルの名前。

    • pt_spec: 必須です。 データをクリアするパーティション。 このパラメーターの値は、(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...) 形式です。 partition_colは列名を示し、partition_col_valueは列の値を示します。 パーティションキー列の名前は大文字と小文字を区別しませんが、値は大文字と小文字を区別します。

    • partition_filtercondition: フィルター条件。 このパラメーターは、フィルター条件を指定するときに必要です。 このパラメーターは大文字と小文字を区別しません。 パラメーターの形式は次のとおりです。

      partition_filtercondition
          : partition (<partition_col> <relational_operators> <partition_col_value>)
          | partition (scalar(<partition_col>) <relational_operators> <partition_col_value>)
          | partition (<partition_filtercondition1> AND|OR <partition_filtercondition2>)
          | partition (NOT <partition_filtercondition>)
          | partition (<partition_filtercondition1>)[,partition (<partition_filtercondition2>), ...]
      • partition_col: パーティションキー列の名前。

      • relational_operators: リレーショナル演算子。 詳細については、「演算子」をご参照ください。

      • partition_col_value: パーティションキー列の値。 値は、比較値または正規表現であってもよい。 この値のデータ型は、パーティションキー列のデータ型と同じである必要があります。

      • scalar(): スカラー関数。 スカラー関数は、入力値に基づいてスカラーを生成し、partition_colで指定された列の値を処理し、relational_operatorsを使用して処理された値をpartition_col_valueと比較します。

      • パーティションの削除に使用されるフィルタ条件は、論理演算子NOT、AND、およびORをサポートします。 PARTITION (<NOT partition_filtercondition>) を使用して、指定したフィルター条件の補完セットを取得できます。 PARTITION (<partition_filtercondition1 ANDOR partition_filtercondition2>) を使用して、削除するパーティションの一致に使用される条件を取得できます。

      • 複数のPARTITION (<partition_filtercondition>) 句がサポートされています。 これらの句がコンマ (,) で区切られている場合、句間の論理関係はORです。 フィルタ条件は、OR論理関係に基づいて取得され、削除するパーティションを一致させるために使用されます。

    • フィルター条件が指定されていません。

      -- Clear the data from a partition of the sale_detail table. The partition stores the sales record in the China (Hangzhou) region in December 2013. 
      truncate table sale_detail partition(sale_date='201312',region='hangzhou'); 
      -- Clear the data from two partitions of the sale_detail table. The partitions store the sales records in the China (Hangzhou) and China (Shanghai) regions in December 2013. 
      truncate table sale_detail partition(sale_date='201312',region='hangzhou'),  partition(sale_date='201312',region='shanghai');
    • フィルター条件が指定されています。

      -- Clear the data from multiple partitions of the sale_detail table. The partitions store the sales records whose values in the sale_date column start with 2013 in the China (Hangzhou) region. 
      truncate table sale_detail partition(sale_date like '2013%' and region='hangzhou');

関連ステートメント

  • CREATE TABLE: 非パーティションテーブル、パーティションテーブル、外部テーブル、またはクラスタ化テーブルを作成します。

  • ALTER TABLE: テーブルに関する情報を変更します。

  • DROP TABLE: パーティションテーブルまたは非パーティションテーブルを削除します。

  • DESC TABLE/VIEW: MaxCompute内部テーブル、ビュー、マテリアライズドビュー、外部テーブル、クラスタ化テーブル、またはトランザクションテーブルに関する情報を表示します。

  • SHOW: テーブルの作成に使用されるSQL DDLステートメントのビュー、またはプロジェクト内のすべてのテーブルとビューの情報、またはテーブル内のすべてのパーティションの情報のクエリを行います。