Sdílet prostřednictvím


COUNT (Azure Stream Analytics)

Vrátí počet položek ve skupině. FUNKCE COUNT vždy vrátí hodnotu datového typu bigint.

Syntaxe

-- Aggregate Function Syntax
COUNT ( { [ [ALL | DISTINCT] expression ] | * } ) 

-- Analytic Function Syntax
COUNT ( { [expression] | * }) OVER ([<PARTITION BY clause>] <LIMIT DURATION clause> [<WHEN clause>])
  

Argumenty

ALL

Použije agregační funkci na všechny hodnoty. Výchozí nastavení je all (VŠE).

ODLIŠNÉ

Určuje, že funkce COUNT vrátí počet jedinečných hodnot, které nemají hodnotu null.

expression

Je výraz libovolného typu nebo název sloupce. Agregační funkce a dílčí dotazy nejsou povoleny.

* (výraz se zástupným znakem)

Určuje, že se mají započítávat všechny události, aby se vrátil celkový počet událostí ve skupině. FUNKCE COUNT(*) nepřijímá žádné parametry. FUNKCE COUNT(*) nevyžaduje parametr výrazu, protože podle definice nepoužívá informace o žádném konkrétním sloupci. Funkce COUNT(*) vrátí počet událostí bez odstranění duplicit. Počítá každou událost zvlášť. To zahrnuje události, které obsahují hodnoty null a vracejí hodnotu 0 pro hodnoty null.

OVER ([<PARTITION BY klauzule><LIMIT DURATION klauzule> [<WHEN klauzule>]]

Určuje skupinu řádků, na které se použije funkce COUNT. Klauzule PARTITION BY určuje, že řádky se stejným klíčem oddílu se seskupí dohromady. Klauzule LIMIT DURATION určuje, kolik historie je součástí skupiny. Klauzule WHEN určuje logickou podmínku pro řádky, které mají být zahrnuty do skupiny. Další podrobnosti o využití najdete v klauzuli OVER .

Poznámky

  • Funkce COUNT(*) vrátí počet událostí včetně hodnot NULL a duplicit.

  • Funkce COUNT(ALL expression) a COUNT(expression) vyhodnocují výraz pro každou událost ve skupině a vrací počet hodnot, které nejsou null.

  • FUNKCE COUNT(výraz DISTINCT) vyhodnocuje výraz pro každou událost ve skupině a vrací počet jedinečných hodnot, které nemají hodnotu null.

  • FUNKCE COUNT(input_stream) je ekvivalentem hodnot COUNT() a COUNT(*), ale funkce COUNT(DISTINCT input_stream) počítá pouze jedinečné události.

  • FUNKCE COUNT(výraz DISTINCT) není podporována jako analytická funkce. To znamená, že nemůžete použít count(výraz DISTINCT) s klauzulí OVER.

Návratové typy

bigint

Příklady

SELECT System.Timestamp() AS OutTime, TollId, COUNT(*)   
FROM Input TIMESTAMP BY EntryTime  
GROUP BY TollId, TumblingWindow(minute,3)  

Viz také

Klauzule GROUP BY
Klauzule OVER