LIST¶
次のSnowflakeステージのいずれかでステージングされた(つまり、ローカルファイルシステムからアップロードされた、またはテーブルからアンロードされた)ファイルのリストを返します。
内部ステージという名前。
外部ステージという名前。
指定したテーブルのステージ。
現在のユーザーのステージ。
LIST は LSに短縮できます。
- こちらもご参照ください:
構文¶
LIST { internalStage | externalStage } [ PATTERN = '<regex_pattern>' ]
条件:
internalStage ::= @[<namespace>.]<int_stage_name>[/<path>] | @[<namespace>.]%<table_name>[/<path>] | @~[/<path>]externalStage ::= @[<namespace>.]<ext_stage_name>[/<path>]
必須パラメーター¶
internalStage | externalStage
データファイルがステージングされる場所を指定します。
@[namespace.]int_stage_name[/path]
ファイルは指定された名前付き内部ステージにあります。
@[namespace.]ext_stage_name[/path]
ファイルは指定された名前付き外部ステージにあります。
@[namespace.]%table_name[/path]
ファイルは指定されたテーブルのステージにあります。
@~[/path]
ファイルは現在のユーザーのステージにあります。
条件:
namespace
は、指定されたステージまたはテーブルが存在するデータベースまたはスキーマ、あるいはその両方です。セッション内でデータベースとスキーマが現在使用されている場合、 オプション です。それ以外の場合は必須です。path
は、一連のファイルへのアクセスを制限するクラウドストレージの場所にある、ファイルの大文字と小文字を区別するオプションのパスです(つまり、ファイルの名前は一般的な文字列で開始)。パスは、別のクラウドストレージサービスによって プレフィックス または フォルダー と呼ばれることもあります。
注釈
ステージ名またはパスにスペースまたは特殊文字が含まれている場合は、一重引用符で囲む必要があります(例:
"my stage"
という名前のステージの場合は'@"my stage"'
)。Tip
パスを指定すると、 LIST コマンドのスコープが提供され、コマンドの実行に必要な時間が短縮される可能性があります。
オプションのパラメーター¶
PATTERN = 'regex_pattern'
出力からファイルをフィルタリングするための正規表現パターンを指定します。このコマンドは、指定された
path
内のすべてのファイルをリストし、見つかった各ファイルに正規表現パターンを適用します。
使用上の注意¶
名前付きステージとは対照的に、テーブルおよびユーザーステージはファーストクラスのデータベースオブジェクトではありません。むしろ、それらはテーブル/ユーザーに関連付けられた暗黙のステージです。そのため、それらには独自の付与可能な権限はありません。
ユーザーステージでいつでもファイルを一覧表示できます(つまり、権限は不要です)。
テーブルステージでファイルを一覧表示するには、テーブルに対する OWNERSHIP 権限を持つロールを使用する必要があります。
出力¶
このコマンドは、次の列を返します。
列 |
データ型 |
説明 |
---|---|---|
名前 |
VARCHAR |
ステージングされたファイルの名前 |
サイズ |
NUMBER |
圧縮されたファイルのサイズ(バイト単位)。 |
md5 |
VARCHAR |
MD5 列には、ステージングされたデータファイルのコンテンツの MD5 ハッシュが格納されます。これを使用して、ファイルが正しくステージング(アップロード)されたことを確認できます。Amazon S3ステージは、S3 eTagフィールドを介して値を報告しますが、これはファイル内容の MD5 ハッシュではない場合があります。 |
最終更新日 |
VARCHAR |
ステージでファイルが最後に更新されたときのタイムスタンプ。 |
例¶
mytable
テーブルのステージ内のすべてのファイルをリストします。
LIST @%mytable;
名前付きステージ mystage
の path1
パスにあるすべてのファイルをリストします。
LIST @mystage/path1;
mytable
テーブルのステージで、正規表現(つまり、文字列 data_0
を含むすべてのファイル名)に一致するファイルをリストします。
LIST @%mytable PATTERN='.*data_0.*';
名前付きステージ my_csv_stage
の /analysis/
パスにある、正規表現(つまり、文字列 data_0
を含むすべてのファイル名)に一致するファイルをリストします。
LIST @my_csv_stage/analysis/ PATTERN='.*data_0.*';
コマンドの省略形を使用して、現在のユーザーのステージ内のすべてのファイルをリストします。
LS @~;