Číst v angličtině

Sdílet prostřednictvím


count agregační funkce

Platí pro:zaškrtnuto ano Databricks SQL zaškrtnuto ano Databricks Runtime

Vrátí počet načtených řádků ve skupině.

Syntaxe

count ( [DISTINCT | ALL] * ) [FILTER ( WHERE cond ) ]
count ( [DISTINCT | ALL] expr [, ...] ) [FILTER ( WHERE cond ) ]

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

Argumenty

  • *: Spočítá všechny řádky ve skupině.
  • expr: Spočítá všechny řádky, pro které všechny exprN nejsou NULL.
  • cond: Volitelný logický výraz filtrující řádky použité pro agregaci.

Návraty

Úloha BIGINT.

Pokud DISTINCT je zadán, vrátí funkce počet jedinečných hodnot, které neobsahují NULL.

Pokud ALL je zadán, vrátí funkce počet všech hodnot. V případě * to zahrnuje ty, které obsahují NULL.

Příklady

> SELECT count(*) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
 4

> SELECT count(1) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
 4

> SELECT count(col) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
 3

> SELECT count(col) FILTER(WHERE col < 10)
    FROM VALUES (NULL), (5), (5), (20) AS tab(col);
 2

> SELECT count(DISTINCT col) FROM VALUES (NULL), (5), (5), (10) AS tab(col);
 2

> SELECT count(col1, col2)
    FROM VALUES (NULL, NULL), (5, NULL), (5, 1), (5, 2), (5, 2), (NULL, 2), (20, 2) AS tab(col1, col2);
 4

> SELECT count(DISTINCT col1, col2)
    FROM VALUES (NULL, NULL), (5, NULL), (5, 1), (5, 2), (NULL, 2), (20, 2) AS tab(col1, col2);
 3