Categorias:

Funções de métricas de dados

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> )
Copy

Argumentos

column

Especifica a coluna que contém valores que são comparados com a expressão booleana em lambda-expression.

lambda-expression

Especifica 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 column não corresponde à expressão booleana. Esta expressão pode usar as seguintes operações e funções:

O column na expressão lambda sempre corresponde ao argumento column.

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);
Copy

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'));
Copy