SHOW VIEWS¶
보안 뷰를 포함하여, 액세스 권한이 있는 뷰를 나열합니다. 이 명령을 사용해 현재/지정된 데이터베이스 또는 스키마 또는 전체 계정에 대한 뷰를 나열할 수 있습니다.
출력은 데이터베이스, 스키마 및 뷰 이름을 기준으로 사전순으로 정렬된 뷰 메타데이터와 속성을 반환합니다. 제공된 필터를 사용해 결과를 필터링하려는 경우 이 점에 유의해야 합니다.
- 참고 항목:
ALTER VIEW , CREATE VIEW , DROP VIEW , DESCRIBE VIEW
VIEWS 뷰 (Information Schema)
구문¶
SHOW [ TERSE ] VIEWS [ LIKE '<pattern>' ]
[ IN { ACCOUNT | DATABASE [ <db_name> ] | [ SCHEMA ] [ <schema_name> ] } ]
[ STARTS WITH '<name_string>' ]
[ LIMIT <rows> [ FROM '<name_string>' ] ]
매개 변수¶
TERSE
출력 열의 서브세트만 선택적으로 반환합니다.
created_on
name
kind
database_name
schema_name
기본값: 값 없음(모든 열이 출력에 포함됨)
LIKE 'pattern'
오브젝트 이름으로 명령 출력을 선택적으로 필터링합니다. 이 필터는 SQL 와일드카드 문자(
%
및_
) 지원과 함께 대/소문자를 구분하지 않는 패턴 일치를 사용합니다.예를 들어, 다음 패턴은 같은 결과를 반환합니다.
... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
. 기본값: 값 없음(출력에 필터링이 적용되지 않음).
IN ACCOUNT | [ DATABASE ] db_name | [ SCHEMA ] schema_name
명령의 범위를 선택적으로 지정하여 이 명령이 현재/지정된 데이터베이스 또는 스키마의 레코드만 나열할지, 아니면 전체 계정의 레코드를 나열할지 여부를 결정합니다.
DATABASE
또는SCHEMA
키워드가 필요하지 않습니다. 데이터베이스 또는 스키마 이름만 지정하여 범위를 설정할 수 있습니다. 마찬가지로, 세션에 현재 사용 중인 데이터베이스가 있는 경우 데이터베이스 또는 스키마 이름이 필요하지 않습니다.DATABASE
또는SCHEMA
가 이름 없이 지정되고 세션에 현재 사용 중인 데이터베이스가 없는 경우 이 매개 변수는 출력에 아무런 영향도 주지 않습니다.SCHEMA
가 이름과 함께 지정되고 세션에 현재 사용 중인 데이터베이스가 없는 경우 스키마 이름은 데이터베이스 이름으로 정규화되어야 합니다(예:testdb.testschema
).
기본값: 세션에 현재 사용 중인 데이터베이스가 있는지 여부에 따라 다릅니다.
데이터베이스:
DATABASE
가 기본값입니다(즉, 이 명령은 데이터베이스에서 볼 권한이 있는 오브젝트를 반환함).데이터베이스 없음:
ACCOUNT
가 기본값입니다(즉, 이 명령은 계정에서 볼 권한이 있는 오브젝트를 반환함).
STARTS WITH 'name_string'
오브젝트 이름의 시작 부분에 나타나는 문자를 기반으로 명령 출력을 선택적으로 필터링합니다. 문자열은 작은따옴표로 묶어야 하며 대/소문자를 구분 합니다.
예를 들어, 다음 문자열은 서로 다른 결과를 반환합니다.
... STARTS WITH 'B' ...
... STARTS WITH 'b' ...
. 기본값: 값 없음(출력에 필터링이 적용되지 않음)
LIMIT rows [ FROM 'name_string' ]
반환되는 최대 행 수를 선택적으로 제한하는 동시에, 결과의 “페이지 매김”도 활성화합니다. 반환되는 실제 행 수는 지정된 제한보다 적을 수 있습니다. 예를 들어 기존 오브젝트 수가 지정된 제한보다 적습니다.
선택적
FROM 'name_string'
하위 절은 사실상 결과에 대한 “커서” 역할을 합니다. 그 덕분에 오브젝트 이름이 지정된 문자열과 일치하는 첫 번째 행 다음에 오는 행을 지정된 개수만큼 가져올 수 있습니다.문자열은 작은따옴표로 묶어야 하며 대/소문자를 구분 합니다.
부분 이름이 지원되므로, 문자열이 전체 오브젝트 이름을 포함할 필요는 없습니다.
기본값: 값 없음(출력에 제한이 적용되지 않음)
참고
FROM 'name_string'
및STARTS WITH 'name_string'
절을 모두 지원하는 SHOW 명령의 경우 동일한 문에서 이러한 절을 모두 결합할 수 있습니다. 하지만 두 가지 조건이 모두 충족되어야 하며, 그렇지 않으면 서로 상쇄되어 아무런 결과도 반환되지 않습니다.또한, 오브젝트는 이름을 기준으로 사전순으로 반환되므로,
FROM 'name_string'
은STARTS WITH 'name_string'
에서 반환된 행보다 사전 값이 더 높은 행만 반환합니다.예:
... STARTS WITH 'A' LIMIT ... FROM 'B'
는 아무런 결과도 반환하지 않습니다.... STARTS WITH 'B' LIMIT ... FROM 'A'
는 아무런 결과도 반환하지 않습니다.... STARTS WITH 'A' LIMIT ... FROM 'AB'
는 결과를 반환합니다(입력 문자열과 일치하는 행이 있는 경우).
사용법 노트¶
이 명령을 실행하기 위해 실행 중인 웨어하우스가 꼭 필요하지는 않습니다.
LIMIT rows
의 값은10000
을 초과할 수 없습니다.LIMIT rows
가 생략된 경우 결과 세트의 행 수가 10,000개를 넘는 경우 이 명령을 실행하면 오류가 발생합니다.10,000개 이상의 레코드가 있는 결과를 보려면
LIMIT rows
를 포함하거나 Snowflake Information Schema 에서 해당 뷰를 쿼리하십시오.
이 명령의 출력을 사후 처리하려면 출력을 쿼리할 수 있는 테이블로 처리하는 RESULT_SCAN 함수를 사용하면 됩니다.
설계상 명령 출력은 보안 뷰를 포함하되, 뷰의 소유권을 가진 역할을 사용하지 않는 한 이러한 뷰에 대한 특정 정보를 제공하지 않습니다. 보안 뷰에 대한 세부 정보를 보려면 뷰를 소유한 역할을 사용하거나 Information Schema의 VIEWS 뷰를 사용해야 합니다.
이 명령의 출력은
SN_TEMP_OBJECT_<n>
(여기서<n>
은 숫자임)과 같은 이름을 가진 오브젝트를 포함할 수 있습니다. 이들 오브젝트는 사용자를 대신하여 Snowpark 라이브러리에서 생성되는 임시 오브젝트입니다.
출력¶
명령 출력은 다음 열에 뷰 속성 및 메타데이터를 제공합니다.
열 |
설명 |
---|---|
created_on |
뷰가 생성된 타임스탬프입니다. |
name |
뷰의 이름입니다. |
reserved |
(향후 사용을 위해 예약되어 있습니다.) |
kind |
뷰 종류( |
데이터베이스_이름 |
뷰가 있는 데이터베이스의 이름입니다. |
스키마_이름 |
뷰가 있는 스키마의 이름입니다. |
owner |
뷰의 소유자입니다. |
comment |
선택적 설명입니다. |
text |
뷰를 만든 명령의 텍스트입니다(예: CREATE VIEW …). |
is_secure |
뷰가 보안 뷰이면 True이고, 그렇지 않으면 False입니다. |
is_materialized |
뷰가 구체화된 뷰이면 True이고, 그렇지 않으면 False입니다. |
owner_role_type |
오브젝트를 소유하는 역할 유형( |
change_tracking |
|
예¶
mydb.public
스키마에서 볼 권한이 있고 이름이 line
으로 시작하는 뷰를 전부 표시합니다.
SHOW VIEWS LIKE 'line%' IN mydb.public; +-------------------------------+---------+----------+---------------+-------------+----------+---------+-------------------------------------------------------+-----------+-----------------+-----------------+-----------------+ | created_on | name | reserved | database_name | schema_name | owner | comment | text | is_secure | is_materialized | change_tracking | owner_role_type | +-------------------------------+---------+----------+---------------+-------------+----------+---------+-------------------------------------------------------+-----------+-----------------+-----------------+-----------------+ | 2019-05-24 18:41:14.247 -0700 | liners1 | | MYDB | PUBLIC | SYSADMIN | | create materialized views liners1 as select * from t; | false | false | on | ROLE | +-------------------------------+---------+----------+---------------+-------------+----------+---------+-------------------------------------------------------+-----------+-----------------+-----------------+-----------------+