Sdílet prostřednictvím


count_if agregační funkce

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Vrátí počet hodnot true pro skupinu v expr.

Syntaxe

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

Tuto funkci lze také vyvolat jako funkci okna pomocí OVER klauzule.

Argumenty

  • expr: Logický výraz.
  • cond: Volitelný logický výraz filtrující řádky použité pro agregaci.

Návraty

Úloha BIGINT.

count_if(expr) FILTER(WHERE cond) je ekvivalent count_if(expr AND cond).

Pokud DISTINCT je zadán pouze jedinečné řádky jsou počítána.

Příklady

> 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