- 카테고리:
ACCEPTED_VALUES(시스템 데이터 메트릭 함수)¶
열의 값이 부울 식과 일치하지 않는 레코드 수를 반환합니다.
구문¶
SNOWFLAKE.CORE.ACCEPTED_VALUES ON ( <column>, <lambda-expression> )
인자¶
columnlambda-expression의 부울 식과 비교되는 값이 포함된 열을 지정합니다.lambda-expressioncolumn -> expression구문으로 구성된 람다 식을 지정합니다.이 함수는
column값이 부울 식과 일치하지 않는 레코드 수를 반환합니다. 이 식은 다음 연산과 함수를 사용할 수 있습니다.람다 식의
column은 항상column인자와 일치합니다.
허용되는 데이터 타입¶
column 및 lambda-expression 인자에 지정된 열은 다음 데이터 타입 중 하나를 포함할 수 있습니다.
DATE
FLOAT
NUMBER
TIMESTAMP_LTZ
TIMESTAMP_NTZ
TIMESTAMP_TZ
VARCHAR
반환¶
이 함수는 NUMBER 값을 반환합니다.
사용법 노트¶
사용자는 이 함수를 직접 호출할 수 없습니다. 함수를 테이블 또는 뷰와 연결하여 규칙적인 간격으로 실행되도록 하는 방법을 알아보려면 DMF 를 연결하여 데이터 품질 검사 자동화하기 섹션을 참조하세요.
SYSTEM$DATA_METRIC_SCAN 함수를 사용하여 테이블을 연결하지 않고 테이블에 대해 ACCEPTED_VALUES 함수를 실행할 수 있습니다.
이 함수를 동일한 열과 두 번 이상 연결할 수 없습니다.
ACCEPTED_VALUES 함수에 지정된 열 이름을 바꾸면 함수와 열의 테이블 또는 뷰 간의 연결이 끊어집니다. 열의 이름을 바꾸면 함수를 테이블 또는 뷰와 다시 연결해야 합니다.
예¶
열 age 의 값이 5와 같지 않은 레코드 수를 반환하도록 함수를 테이블 t1 과 연결합니다.
ALTER TABLE t1
ADD DATA METRIC FUNCTION SNOWFLAKE.CORE.ACCEPTED_VALUES ON (age, age -> age = 5);
열 order_status 의 값이 문자열 목록 Pending, Dispatched 및 Delivered 의 목록에 없는 레코드 수를 반환하도록 함수를 뷰 order_details 와 연결합니다.
ALTER VIEW order_details
ADD DATA METRIC FUNCTION SNOWFLAKE.CORE.ACCEPTED_VALUES ON (
order_status,
order_status -> order_status IN ('Pending', 'Dispatched', 'Delivered'));