Compartilhar via


Função de agregação count_if

Aplica-se a: marca de seleção positiva SQL do Databricks marca de seleção positiva Runtime do Databricks

Retorna o número de valores verdadeiros para o grupo em expr.

Sintaxe

count_if ( [ALL | DISTINCT] expr ) [ FILTER ( WHERE cond ) ]

Essa função também pode ser invocada como uma função de janela usando a cláusula OVER.

Argumentos

  • expr: uma expressão BOOLIANA.
  • cond: uma expressão booliana opcional que filtra as linhas usadas para agregação.

Retornos

Um BIGINT.

count_if(expr) FILTER(WHERE cond) é equivalente a count_if(expr AND cond).

Se DISTINCT é especificado, somente as linhas exclusivas são contadas.

Exemplos

> SELECT count_if(col % 2 = 0) FROM VALUES (NULL), (0), (1), (2), (2), (3) AS tab(col);
 3

> SELECT count_if(DISTINCT col % 2 = 0) FROM VALUES (NULL), (0), (1), (2), (2), (3) AS tab(col);
 2

> SELECT count_if(col IS NULL) FROM VALUES (NULL), (0), (1), (2), (3) AS tab(col);
 1