- Categorias:
ACCEPTED_VALUES (função de métricas de dados do sistema)¶
Retorna o número de registros em que o valor de uma coluna não corresponde a uma expressão booleana.
Sintaxe¶
SNOWFLAKE.CORE.ACCEPTED_VALUES ON ( <column>, <lambda-expression> )
Argumentos¶
columnEspecifica a coluna que contém valores que são comparados com a expressão booleana em
lambda-expression.lambda-expressionEspecifica uma expressão lambda que consiste na seguinte sintaxe:
column -> expression.A função retorna o número de registros em que o valor de
columnnão corresponde à expressão booleana. Esta expressão pode usar as seguintes operações e funções:O
columnna expressão lambda sempre corresponde ao argumentocolumn.
Tipos de dados permitidos¶
A coluna especificada nos argumentos column e lambda-expression podem conter qualquer um dos seguintes tipos de dados:
DATE
FLOAT
NUMBER
TIMESTAMP_LTZ
TIMESTAMP_NTZ
TIMESTAMP_TZ
VARCHAR
Retornos¶
A função retorna um valor NUMBER.
Notas de uso¶
Você não pode chamar esta função diretamente. Para saber como associar a função a uma tabela ou visualização para que seja executada em intervalos regulares, consulte Associe uma DMF para automatizar as verificações de qualidade dos dados.
Você pode usar a função SYSTEM$DATA_METRIC_SCAN para executar a função ACCEPTED_VALUES em uma tabela sem associá-la.
Você não pode associar esta função à mesma coluna mais de uma vez.
Como renomear uma coluna especificada na função ACCEPTED_VALUES quebra a associação entre a função e a tabela ou exibição da coluna. Se você renomear a coluna, deverá reassociar a função à tabela ou exibição.
Exemplos¶
Associar a função à tabela t1 para que retorne o número de registros em que o valor da coluna age não é igual a cinco.
ALTER TABLE t1
ADD DATA METRIC FUNCTION SNOWFLAKE.CORE.ACCEPTED_VALUES ON (age, age -> age = 5);
Associar a função à visualização order_details para que retorne o número de registros em que o valor da coluna order_status não está na lista de strings Pending, Dispatched e Delivered.
ALTER VIEW order_details
ADD DATA METRIC FUNCTION SNOWFLAKE.CORE.ACCEPTED_VALUES ON (
order_status,
order_status -> order_status IN ('Pending', 'Dispatched', 'Delivered'));