SHOW DATA METRIC FUNCTIONS¶
액세스 권한이 있는 데이터 메트릭 함수 (DMFs)를 나열합니다.
이 명령을 사용하여 세션, 지정된 데이터베이스나 스키마 또는 전체 계정에 대한 현재 데이터베이스 및 스키마의 DMFs를 나열할 수 있습니다.
- 참고 항목:
CREATE DATA METRIC FUNCTION , ALTER FUNCTION (DMF), DESCRIBE FUNCTION (DMF) , DROP FUNCTION (DMF)
구문¶
SHOW DATA METRIC FUNCTIONS
[ LIKE '<pattern>' ]
[ IN
{
ACCOUNT |
DATABASE |
DATABASE <database_name> |
SCHEMA |
SCHEMA <schema_name> |
<schema_name>
}
]
[ STARTS WITH '<name_string>' ]
매개 변수¶
LIKE 'pattern'
오브젝트 이름으로 명령 출력을 선택적으로 필터링합니다. 이 필터는 SQL 와일드카드 문자(
%
및_
) 지원과 함께 대/소문자를 구분하지 않는 패턴 일치를 사용합니다.예를 들어, 다음 패턴은 같은 결과를 반환합니다.
... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
. 기본값: 값 없음(출력에 필터링이 적용되지 않음).
[ IN ... ]
선택적으로 명령의 범위를 지정합니다. 다음 중 하나를 지정합니다.
ACCOUNT
전체 계정의 레코드를 반환합니다.
DATABASE
, .DATABASE db_name
현재 사용 중인 데이터베이스 또는 지정된 데이터베이스(
db_name
)의 레코드를 반환합니다.db_name
없이DATABASE
를 지정하고 사용 중인 데이터베이스가 없는 경우 키워드는 출력에 아무런 영향도 주지 않습니다.참고
데이터베이스 컨텍스트에서
IN
절 없이 SHOW 명령을 사용하면 예상보다 적은 결과를 얻을 수 있습니다.IN
절이 사용되지 않는 경우 같은 이름을 가진 오브젝트는 한 번만 표시됩니다. 예를 들어,schema1
에t1
테이블,schema2
에t1
테이블이 있고 두 테이블이 모두 지정한 데이터베이스 컨텍스트의 범위에 있는 경우(즉, 선택한 데이터베이스가schema1
및schema2
의 부모인 경우), SHOW TABLES 는t1
테이블 중 하나만 표시합니다.SCHEMA
, .SCHEMA schema_name
현재 사용 중인 스키마 또는 지정된 스키마(
schema_name
)의 레코드를 반환합니다.데이터베이스가 사용 중이거나 정규화된
schema_name
(예:db.schema
)을 지정하는 경우SCHEMA
는 선택 사항입니다.사용 중인 데이터베이스가 없으면
SCHEMA
를 지정해도 출력에 아무런 영향도 주지 않습니다.
기본값: 세션에 현재 사용 중인 데이터베이스가 있는지 여부에 따라 다릅니다.
데이터베이스:
DATABASE
가 기본값입니다(즉, 이 명령은 데이터베이스에서 볼 권한이 있는 오브젝트를 반환함).데이터베이스 없음:
ACCOUNT
가 기본값입니다(즉, 이 명령은 계정에서 볼 권한이 있는 오브젝트를 반환함).
STARTS WITH 'name_string'
오브젝트 이름의 시작 부분에 나타나는 문자를 기반으로 명령 출력을 선택적으로 필터링합니다. 문자열은 작은따옴표로 묶어야 하며 대/소문자를 구분 합니다.
예를 들어, 다음 문자열은 서로 다른 결과를 반환합니다.
... STARTS WITH 'B' ...
... STARTS WITH 'b' ...
. 기본값: 값 없음(출력에 필터링이 적용되지 않음)
출력¶
명령 출력은 다음 열에 DMF 속성과 메타데이터를 제공합니다.
열 |
설명 |
---|---|
|
함수가 생성된 타임스탬프입니다. |
|
함수의 이름입니다. |
|
함수가 존재하는 스키마의 이름입니다. NULL (기본 제공 함수의 경우입니다.) |
|
함수가 기본 제공 함수이면 |
|
함수가 집계 함수이면 |
|
함수가 ANSI SQL 표준의 일부로 정의되면 |
|
최소 인자 개수입니다. |
|
최대 인자 개수입니다. |
|
인자 및 반환 값의 데이터 타입을 표시합니다. |
|
함수에 대한 설명입니다. |
|
함수가 존재하는 데이터베이스의 이름입니다. NULL (기본 제공 함수의 경우입니다.) |
|
함수가 테이블 함수인 경우 |
|
CLUSTER BY 식에서 함수를 사용할 수 있으면 |
|
함수가 보안 함수이면 |
|
함수가 외부 함수이면 |
|
|
|
함수가 메모이제이션 가능 함수이면 |
|
함수가 DMF 이면 |
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
참고 |
---|---|---|
USAGE |
데이터 메트릭 함수 |
스키마의 모든 오브젝트에 대해 작업을 수행하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
사용법 노트¶
이 명령을 실행하기 위해 실행 중인 웨어하우스가 꼭 필요하지는 않습니다.
이 명령은 현재 사용자의 현재 역할에 하나 이상의 액세스 권한이 부여된 오브젝트만 반환합니다.
MANAGE GRANTS 액세스 권한은 그 권한을 보유한 자가 계정에 있는 모든 오브젝트를 볼 수 있도록 암시적으로 허용합니다. 기본적으로, 계정 관리자(ACCOUNTADMIN 역할 이 있는 사용자)와 보안 관리자(SECURITYADMIN 역할이 있는 사용자)만 MANAGE GRANTS 권한을 가집니다.
이 명령의 출력을 사후 처리하려면 출력을 쿼리할 수 있는 테이블로 처리하는 RESULT_SCAN 함수를 사용하면 됩니다. 파이프 연산자 를 사용하여 이 명령의 출력을 쿼리할 수도 있습니다.
이 명령은 명령을 실행하는 데 사용된 역할에 대한 액세스 권한에 따라 지정된 오브젝트 유형에 대해 최대 1만 개의 레코드를 반환합니다. 필터를 적용하더라도 1만 개 레코드 제한을 초과하는 레코드는 반환되지 않습니다.
10,000개 이상의 레코드가 존재하는 결과를 보려면 Snowflake Information Schema 에서 해당 뷰(있는 경우)를 쿼리하십시오.
예¶
다음 예제에서는 governance
데이터베이스의 dmfs
스키마에서 볼 수 있는 권한이 있는 DMFs를 나열합니다
USE SCHEMA governance.dmfs;
SHOW DATA METRIC FUNCTIONS;
+--------------------------+------------------------+-------------+------------+--------------+---------+-------------------+-------------------+--------------------------------------------------------------------------------------------+-----------------------+--------------+-------------------+----------------------+-----------+----------------------+----------+---------------+----------------+
| created_on | name | schema_name | is_builtin | is_aggregate | is_ansi | min_num_arguments | max_num_arguments | arguments | description | catalog_name | is_table_function | valid_for_clustering | is_secure | is_external_function | language | is_memoizable | is_data_metric |
+--------------------------+------------------------+-------------+------------+--------------+---------+-------------------+-------------------+--------------------------------------------------------------------------------------------+-----------------------+--------------+-------------------+----------------------+-----------+----------------------+----------+---------------+----------------+
| 2023-12-11T23:30:02.785Z | COUNT_POSITIVE_NUMBERS | DMFS | N | N | N | 1 | 1 | "COUNT_POSITIVE_NUMBERS(TABLE(NUMBER, NUMBER, NUMBER)) RETURNS NUMBER" | user-defined function | GOVERNANCE | N | N | N | N | SQL | N | Y |
+--------------------------+------------------------+-------------+------------+--------------+---------+-------------------+-------------------+--------------------------------------------------------------------------------------------+-----------------------+--------------+-------------------+----------------------+-----------+----------------------+----------+---------------+----------------+