指定されたテーブルからデータを消去します。
パーティション分割されていないテーブルからデータを消去する
指定された非パーティションテーブルからデータをクリアします。 パーティションテーブルの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ステートメントのビュー、またはプロジェクト内のすべてのテーブルとビューの情報、またはテーブル内のすべてのパーティションの情報のクエリを行います。