カテゴリ:

DML コマンド - ファイルのステージング

REMOVE

次のSnowflake内部ステージのいずれかでステージングされた(つまり、ローカルファイルシステムからアップロードされた、またはテーブルからアンロードされた)ファイルを削除します。

  • 内部ステージという名前。

  • 指定したテーブルのステージ。

  • 現在のユーザーのステージ。

REMOVE は RMに短縮できます。

こちらもご参照ください:

LIST

構文

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/;
    
  • REMOVE ステートメントの実行が完了する前に中断された場合、そのステートメントによって既に削除されたファイルは復元されません。

mystage という名前の内部ステージからすべてのファイルを削除します。

REMOVE @mystage;

orders テーブルのステージからすべてのファイルを削除します。

REMOVE @%orders;

コマンドの省略形を使用して、現在のユーザーのステージからパターン *jun* に一致するファイルを削除します。

RM @~ pattern='.*jun.*';