Condividi tramite


CONTARE

✅ Flusso di eventi dell'infrastruttura di Analisi ✅ di flusso di Azure

Consente di restituire il numero di elementi di un gruppo. COUNT restituisce sempre un valore del tipo di dati Bigint.

Sintassi

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

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

Argomenti

TUTTO

Applica la funzione di aggregazione a tutti i valori. Il valore predefinito è ALL.

DISTINTO

Specifica che COUNT restituisce il numero di valori univoci non Null.

di espressione

Espressione di qualsiasi tipo o nome di colonna. Le funzioni di aggregazione e le sottoquery non sono consentite.

* (espressione con caratteri jolly)

Specifica che tutti gli eventi devono essere conteggiati per restituire il numero totale di eventi in un gruppo. COUNT(*) non accetta parametri. COUNT(*) non richiede un parametro di espressione perché, per definizione, non utilizza informazioni su una determinata colonna. COUNT(*) restituisce il numero di eventi senza eliminare i duplicati. Conta ogni evento separatamente. Sono inclusi gli eventi che contengono valori Null, restituendo un valore 0 per i valori Null.

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

Determina il gruppo di righe su cui viene applicato COUNT. La clausola PARTITION BY specifica che le righe con la stessa chiave di partizione verranno raggruppate. La clausola LIMIT DURATION specifica la quantità di cronologia inclusa nel gruppo. La clausola WHEN specifica una condizione booleana per le righe da includere nel gruppo. Per altri dettagli sull'utilizzo, vedere la clausola OVER .

Osservazioni:

  • COUNT(*) restituisce il numero di eventi, inclusi i valori NULL e i duplicati.

  • COUNT(ALL expression) e COUNT(expression) valuta l'espressione per ogni evento in un gruppo e restituisce il numero di valori non Null.

  • COUNT(DISTINCT expression) valuta l'espressione per ogni evento in un gruppo e restituisce il numero di valori univoci e non Null.

  • COUNT(input_stream) equivale a COUNT() e COUNT(*), ma COUNT(DISTINCT input_stream) conta solo eventi univoci.

  • COUNT(DISTINCT expression) non è supportato come funzione analitica. Ovvero, non è possibile usare COUNT(DISTINCT expression) con la clausola OVER.

Tipi restituiti

bigint

Esempi

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

Vedere anche

Clausola GROUP BY
Clausola OVER