DELETE
指定された条件に基づいてテーブルからデータ行を削除します。テーブルはパーティション化されている場合とされていない場合があります。
重複キーテーブル、集計テーブル、ユニークキーテーブルでは、指定されたパーティションからデータを削除できます。v2.3から、主キーテーブルは完全な DELETE...WHERE
セマンティクスをサポートし、主キー、任意の列、またはサブクエリの結果に基づ いてデータ行を削除できます。v3.0から、StarRocks は DELETE...WHERE
セマンティクスをマルチテーブルジョインと共通テーブル式 (CTE) で強化しました。データベース内の他のテーブルと主キーテーブルをジョインする必要がある場合、USING 句または CTE でこれらの他のテーブルを参照できます。
使用上の注意
- DELETE を実行するテーブルとデータベースに対する権限が必要です。
- 頻繁な DELETE 操作は推奨されません。必要な場合は、ピーク時を避けて実行してください。
- DELETE 操作はテーブル内のデータのみを削除します。テーブル自体は残ります。テーブルを削除するには、DROP TABLE を実行してください。
- 誤操作でテーブル全体のデータが削除されるのを防ぐため、DELETE 文には WHERE 句を指定する必要があります。
- 削除された行はすぐにはクリーニングされません。それらは「削除済み」とマークされ、セグメントに一時的に保存されます。物理的には、データバージョンのマージ (コンパクション) が完了した後にのみ行が削除されます。
- この操作は、このテーブルを参照するマテリアライズドビューのデータも削除します。
- システム変数
insert_timeout
を使用して、DELETE 操作のタイムアウト時間を設定することができます。