Partilhar via


COUNT (Azure Stream Analytics)

Devolve o número de itens num grupo. COUNT devolve sempre um valor de tipo de dados bigint.

Sintaxe

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

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

Argumentos

TODOS

Aplica a função de agregação a todos os valores. ALL é a predefinição.

DISTINCT

Especifica que CONTAR devolve o número de valores exclusivos não nulos.

expression

É uma expressão de qualquer tipo ou nome de coluna. As funções de agregação e as subconsultas não são permitidas.

* (expressão de caráter universal)

Especifica que todos os eventos devem ser contados para devolver o número total de eventos num grupo. COUNT(*) não aceita parâmetros. COUNT(*) não requer um parâmetro de expressão porque, por definição, não utiliza informações sobre nenhuma coluna específica. COUNT(*) devolve o número de eventos sem eliminar duplicados. Conta cada evento separadamente. Isto inclui eventos que contêm valores nulos, devolvendo um 0 para valores nulos.

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

Determina o grupo de linhas sobre o qual a função CONTAR é aplicada. A cláusula PARTITION BY especifica que as linhas com a mesma chave de partição serão agrupadas. A cláusula LIMIT DURATION especifica a quantidade de histórico incluída no grupo. A cláusula WHEN especifica uma condição booleana para que as linhas sejam incluídas no grupo. Veja a cláusula OVER para obter mais detalhes sobre a utilização.

Observações

  • COUNT(*) devolve o número de eventos, incluindo valores NULL e duplicados.

  • COUNT(ALL expression) e COUNT(expression) avaliam a expressão para cada evento num grupo e devolvem o número de valores não nulos.

  • COUNT(EXPRESSÃO DISTINCT) avalia a expressão para cada evento num grupo e devolve o número de valores exclusivos e não nulos.

  • COUNT(input_stream) é equivalente a COUNT() e COUNT(*), mas COUNT(DISTINCT input_stream) conta apenas eventos exclusivos.

  • COUNT(EXPRESSÃO DISTINCT) não é suportado como uma função analítica. Ou seja, não pode utilizar COUNT(DISTINCT expression) com a cláusula OVER.

Tipos de Retorno

bigint

Exemplos

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

Consulte também

Cláusula GROUP BY
Cláusula OVER