LIST¶
다음 Snowflake 저장소 기능 중 하나에서 파일 목록을 반환합니다.
- 스테이지 - 명명된 내부 
- 명명된 외부 
- 지정된 테이블의 경우 
- 현재 사용자의 경우 
 
LIST는 LS로 축약할 수 있습니다.
- 참고 항목:
구문¶
구문은 스테이징 또는 Git 리포지토리 복제본에 파일을 나열하는지 여부에 따라 다릅니다.
스테이징의 경우¶
LIST { internalStage | externalStage } [ PATTERN = '<regex_pattern>' ]
여기서:
internalStage ::= @[<namespace>.]<int_stage_name>[/<path>] | @[<namespace>.]%<table_name>[/<path>] | @~[/<path>]externalStage ::= @[<namespace>.]<ext_stage_name>[/<path>]
Git 리포지토리 복제본의 경우¶
LIST repositoryClone [ PATTERN = '<regex_pattern>' ]
여기서:
repositoryClone ::= @[<namespace>.]<repository_clone>/<path>
필수 매개 변수¶
스테이징의 경우¶
- internalStage | externalStage
- 데이터 파일이 스테이징되는 위치를 지정합니다. - @[namespace.]int_stage_name[/path]- 파일이 지정된 명명된 내부 스테이지에 있습니다. - @[namespace.]ext_stage_name[/path]- 파일이 지정된 명명된 외부 스테이지에 있습니다. - @[namespace.]%table_name[/path]- 파일이 지정된 테이블의 스테이지에 있습니다. - @~[/path]- 파일이 현재 사용자의 스테이지에 있습니다. - 여기서: - namespace는 명명된 스테이지 또는 테이블이 있는 데이터베이스 및/또는 스키마입니다. 데이터베이스와 스키마가 현재 세션 내에서 사용 중인 경우 이는 선택 사항입니다. 그렇지 않은 경우에는 필수입니다.
- path는 파일 세트에 대한 액세스를 제한하는 클라우드 저장소 위치에 있는 파일의 선택적 경로로, 대/소문자를 구분합니다(즉, 파일 이름이 공통 문자열로 시작함). 다른 클라우드 저장소 서비스에서는 경로를 접두사 또는 폴더 라고도 합니다.
 - 참고 - 스테이지 이름 또는 경로가 공백이나 특수 문자를 포함한 경우 이를 작은따옴표로 묶어야 합니다(예: - "my stage"로 명명된 스테이지의 경우- '@"my stage"').- 팁 - 경로를 지정하면 LIST 명령의 범위가 제공되어 명령 실행에 필요한 시간을 줄일 수 있는 가능성이 있습니다. 
Git 리포지토리 복제본의 경우¶
- repositoryClone
- :doc:`리포지토리 복제본</sql-reference/sql/create-git-repository>`의 이름 및 파일을 나열할 분기, 태그 또는 커밋을 지정합니다. - @[namespace.]repository_clone/path- Git 리포지토리 복제본에서 파일을 나열할 때 :code:`path`는 필수이며 다음 중 하나로 시작해야 합니다. - branches/branch_name- 지정된 분기의 파일을 나열합니다. - tags/tag_name- 지정된 태그의 파일을 나열합니다. - commits/commit_hash- 커밋 해시로 지정된 커밋의 파일을 나열합니다. - 참고 - 리포지토리 복제본 이름 또는 경로에 공백이나 특수 문자가 포함된 경우 작은따옴표(예: 이름이 - "my repository"`인 리포지토리의 경우 :code:’@”my repository”’`)로 묶어야 합니다.
선택적 매개 변수¶
- PATTERN = 'regex_pattern'
- 출력에서 파일을 필터링하기 위한 정규식 패턴을 지정합니다. 이 명령은 지정된 - path의 모든 파일을 나열하고 찾은 각 파일에 정규식 패턴을 적용합니다.
사용법 노트¶
- 저장소 통합을 사용하는 외부 스테이지에서 이 명령을 실행하려면 저장소 통합에 대한 USAGE 권한이 있거나 이를 상속받은 역할을 사용해야 합니다. - 자세한 내용은 스테이지 권한 섹션을 참조하십시오. 
- 명명된 스테이지와 달리, 테이블 및 사용자 스테이지는 일급 데이터베이스 오브젝트가 아니라, 오히려 테이블/사용자와 연결된 암시적 스테이지입니다. 따라서 이런 스테이지는 부여할 수 있는 자체적인 권한이 없습니다. - 항상 사용자 스테이지에서 파일을 나열할 수 있습니다(즉, 아무런 권한도 필요하지 않음). 
- 테이블 스테이지에서 파일을 나열하려면 테이블에 대한 OWNERSHIP 권한을 가진 역할을 사용해야 합니다. 
- PATTERN 은 Java Pattern 클래스 구문을 지원합니다. 
 
출력¶
이 명령은 다음 테이블의 열을 반환합니다. 열 값은 LIST를 스테이징과 사용하는지 또는 Git 리포지토리 복제본과 사용하는지 여부에 따라 달라집니다.
스테이징의 경우¶
| 열 | 데이터 타입 | 설명 | 
|---|---|---|
| 이름 | VARCHAR | 스테이징된 파일의 이름입니다. | 
| 크기 | NUMBER | 압축된 파일의 크기(바이트)입니다. | 
| md5 | VARCHAR | MD5 열에는 스테이징된 데이터 파일 내용의 MD5 해시가 저장됩니다. 기본 암호화(SNOWFLAKE_FULL)가 적용된 내부 스테이지의 경우, 업로드 시 소스 파일은 임의의 키로 암호화되며, 그 결과 MD5 수집은 항상 원본 로컬 파일과 다릅니다. Amazon S3 스테이지는 파일 내용 중 MD5 해시가 아닐 수 있는 S3 eTag 필드를 통해 값을 보고합니다. 고객이 관리하는 암호화 키(CMEK)를 사용하는 Google Cloud 스테이지의 경우 md5는 NULL 로 예상됩니다. 자세한 내용은 고객 관리 암호화 키 를 참조하십시오. | 
| sha1 | VARCHAR | 사용되지 않음 | 
| 마지막으로_수정한_날짜 | VARCHAR | 파일이 스테이지에서 마지막으로 업데이트된 타임스탬프 | 
Git 리포지토리 복제본의 경우¶
| 열 | 데이터 타입 | 설명 | 
|---|---|---|
| 이름 | VARCHAR | 확장명이 있는 전체 파일 경로 | 
| 크기 | NUMBER | 압축된 파일의 크기(바이트)입니다. | 
| md5 | VARCHAR | 사용되지 않음 | 
| sha1 | VARCHAR | 파일 내용에 SHA-1 해싱 알고리즘을 적용하여 생성된 고유 식별자입니다. Git이 리포지토리에 있는 파일의 정확한 버전을 추적하고 참조하는 데 사용되며, 파일 내용의 변경 사항을 감지하는 데 사용할 수 있습니다. | 
| 마지막으로_수정한_날짜 | 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 @~;
Git 리포지토리 복제본의 경우¶
예는 리포지토리 파일 목록 보기 을 참조하십시오.