- カテゴリ:
DML コマンド - ファイルのステージング
REMOVE¶
次のSnowflake内部ステージのいずれかでステージングされた(つまり、ローカルファイルシステムからアップロードされた、またはテーブルからアンロードされた)ファイルを削除します。
内部ステージという名前。
指定したテーブルのステージ。
現在のユーザーのステージ。
コマンドを使用して外部ステージからファイルを削除できる場合もありますが、正式にはサポートされていません。
REMOVE は RM に短縮できます。
- こちらもご参照ください:
構文¶
REMOVE internalStage [ PATTERN = '<regex_pattern>' ]
条件:
internalStage ::= @[<namespace>.]<int_stage_name>[/<path>] | @[<namespace>.]%<table_name>[/<path>] | @~[/<path>]
必須パラメーター¶
internalStage
ファイルがステージングされるSnowflakeの場所を指定します。
@[名前空間.]内部ステージ名[/パス]
指定された名前の内部ステージからファイルが削除されます。
@[名前空間.]%テーブル名[/パス]
指定したテーブルのステージからファイルが削除されます。
@~[/パス]
現在のユーザーのファイルがステージから削除されます。
条件:
名前空間
は、指定された内部ステージまたはテーブルが存在するデータベースまたはスキーマ、あるいはその両方です。セッション内でデータベースとスキーマが現在使用されている場合、 オプション です。それ以外の場合は必須です。パス
は、一連のファイルへのアクセスを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。
文字列は一重引用符で囲むことができます。これにより、場所名(例:
'@"my stage"'
)にスペースを含む特殊文字を使用できます。
オプションのパラメーター¶
PATTERN = '正規表現パターン'
削除するファイルをフィルタリングするための正規表現パターンを指定します。このコマンドは、指定された
パス
内のすべてのファイルを一覧表示し、見つかった各ファイルに正規表現パターンを適用します。
使用上の注意¶
このコマンドは、指定されたパスに一致するすべてのディレクトリとファイルを削除します。例えば、次のステートメントは、
mytable
テーブルステージの次のオブジェクトのいずれかに一致します。myobject.csv.gz
(ファイル)myobject
(ディレクトリ)myobject_new
(ディレクトリ)
rm @%mytable/myobject;
特定のディレクトリのすべてのファイルを削除するには、パスの最後にスラッシュ(
/
)を含めます。例:rm @%mytable/myobject/;
Snowflakeユーザーステージで、
worksheet_data
ディレクトリを削除 しない でください。従来のウェブインターフェイスは、ワークシートのメタデータをこのディレクトリの Worksheetsタブに保存します。ディレクトリを削除すると、ワークシートへのアクセスが削除され、復元できなくなります。
この注意事項は、新しいウェブインターフェイスのSnowsightワークシートには適用されません。これらのワークシートは他の場所に保存されており、誤って削除される可能性はありません。
REMOVE ステートメントの実行が完了する前に中断された場合、そのステートメントによって既に削除されたファイルは復元されません。
例¶
mystage
という名前の内部ステージで path1/subpath2
パスからすべてのファイルを削除します。
REMOVE @mystage/path1/subpath2;
orders
テーブルのステージからすべてのファイルを削除します。
REMOVE @%orders;
コマンドの省略形を使用して、現在のユーザーのステージからパターン *jun*
に一致するファイルを削除します。
RM @~ pattern='.*jun.*';