SHOW INDEXES¶
액세스 권한이 있는 계정의 모든 인덱스를 나열합니다.
- 참고 항목:
CREATE HYBRID TABLE , CREATE INDEX , DROP INDEX , DROP TABLE , DESCRIBE TABLE , SHOW HYBRID TABLES
구문¶
SHOW [ TERSE ] INDEXES
[ LIKE '<pattern>' ]
[ IN { ACCOUNT | DATABASE [ <database_name> ] | SCHEMA [ <schema_name> ] | TABLE | TABLE <table_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 [ database_name ] | SCHEMA [ schema_name ] | TABLE | TABLE table_name }
지정된 데이터베이스, 스키마, 테이블 또는 계정을 기준으로 출력을 필터링합니다.
키워드
ACCOUNT
를 지정하는 경우 이 명령은 현재 계정의 모든 데이터베이스에 있는 모든 스키마의 레코드를 검색합니다.키워드
DATABASE
를 지정하면 다음 사항이 적용됩니다.db_name
을 지정하는 경우 이 명령은 지정된 데이터베이스의 모든 스키마의 레코드를 검색합니다.db_name
을 지정하지 않으면 다음 사항이 적용됩니다.현재 데이터베이스가 있는 경우 이 명령은 현재 데이터베이스의 모든 스키마의 레코드를 검색합니다.
현재 데이터베이스가 없는 경우 이 명령은 계정의 모든 데이터베이스 및 스키마의 레코드를 검색합니다.
키워드
SCHEMA
를 지정하면 다음 사항이 적용됩니다.정규화된 스키마 이름(예:
my_database.my_schema
)을 지정하는 경우 이 명령은 지정된 데이터베이스 및 스키마의 레코드를 검색합니다.정규화되지 않은
schema_name
을 지정하면 다음 사항이 적용됩니다.현재 데이터베이스가 있는 경우 이 명령은 현재 데이터베이스의 지정된 스키마의 레코드를 검색합니다.
현재 데이터베이스가 없는 경우 이 명령은
SQL compilation error: Object does not exist, or operation cannot be performed
오류 메시지를 표시합니다.
schema_name
을 지정하지 않으면 다음 사항이 적용됩니다.현재 데이터베이스가 있으면 다음 사항이 적용됩니다.
현재 스키마가 있는 경우 이 명령은 현재 데이터베이스의 현재 스키마의 레코드를 검색합니다.
현재 스키마가 없는 경우 이 명령은 현재 데이터베이스의 모든 스키마의 레코드를 검색합니다.
현재 데이터베이스가 없는 경우 이 명령은 계정의 모든 데이터베이스 및 모든 스키마의 레코드를 검색합니다.
table_name
없이 키워드TABLE
을 지정하면 다음 사항이 적용됩니다.현재 데이터베이스가 있으면 다음 사항이 적용됩니다.
현재 스키마가 있는 경우 이 명령은 현재 데이터베이스의 현재 스키마의 레코드를 검색합니다.
현재 스키마가 없는 경우 이 명령은 현재 데이터베이스의 모든 스키마의 레코드를 검색합니다.
현재 데이터베이스가 없는 경우 이 명령은 계정의 모든 데이터베이스 및 모든 스키마의 레코드를 검색합니다.
(키워드
TABLE
이 있거나 없는 상태에서)<테이블_이름>
을 지정하는 경우 다음 사항이 적용됩니다.정규화된
<테이블_이름>
(예:my_database_name.my_schema_name.my_table_name
)을 지정하는 경우 이 명령은 지정된 테이블의 모든 레코드를 검색합니다.스키마 정규화된
<테이블_이름>
(예:my_schema_name.my_table_name
)을 지정하는 경우 다음 사항이 적용됩니다.현재 데이터베이스가 있는 경우 이 명령은 지정된 테이블의 모든 레코드를 검색합니다.
현재 데이터베이스가 없는 경우 이 명령은
Cannot perform SHOW <오브젝트_유형>. This session does not have a current database...
과 유사한 오류를 표시합니다.
정규화되지 않은
<테이블_이름>
을 지정하면 다음 사항이 적용됩니다.현재 데이터베이스와 현재 스키마가 있는 경우 이 명령은 현재 데이터베이스의 현재 스키마에서 지정된 테이블의 레코드를 검색합니다.
현재 데이터베이스가 없거나 현재 스키마가 없는 경우 이 명령은
SQL compilation error: <오브젝트> does not exist or not authorized.
와 유사한 오류를 표시합니다.
기본값: 세션에 현재 사용 중인 데이터베이스가 있는지 여부에 따라 다릅니다.
데이터베이스:
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'
는 결과를 반환합니다(입력 문자열과 일치하는 행이 있는 경우).
사용법 노트¶
이 명령은 보조 인덱스를 삭제하는 데에만 사용할 수 있습니다. 고유 및/또는 외래 키 제약 조건을 적용하는 데 사용되는 인덱스를 삭제하려면 대신 ALTER TABLE 명령을 사용하십시오.
하이브리드 테이블 에서 보조 인덱스를 사용하려면 해당 테이블에 SELECT 권한을 부여해야 합니다.
출력¶
열 |
설명 |
---|---|
|
인덱스가 만들어진 날짜 및 시간입니다. |
|
인덱스의 이름입니다. |
|
인덱스가 고유 인덱스인지 여부입니다. |
|
인덱싱된 열의 목록입니다. |
|
포함된 열의 목록입니다. |
|
테이블의 이름입니다. |
|
인덱스가 저장되는 데이터베이스입니다. |
|
인덱스가 저장되는 스키마입니다. |
|
서비스를 소유한 역할입니다. |
|
소유자의 역할 유형입니다. |