Bagikan melalui


HITUNG

✅ Azure Stream Analytics ✅ Fabric Eventstream

Mengembalikan jumlah item dalam grup. COUNT selalu mengembalikan nilai jenis data bigint.

Sintaksis

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

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

Argumen

SEMUA

Menerapkan fungsi agregat ke semua nilai. ALL adalah default.

NYATA

Menentukan bahwa COUNT mengembalikan jumlah nilai unik non-null.

ekspresi

Adalah ekspresi dari jenis apa pun atau nama kolom. Fungsi agregat dan subkueri tidak diizinkan.

* (ekspresi kartubebas)

Menentukan bahwa semua peristiwa harus dihitung untuk mengembalikan jumlah total peristiwa dalam grup. COUNT(*) tidak mengambil parameter. COUNT(*) tidak memerlukan parameter ekspresi karena, menurut definisi, ia tidak menggunakan informasi tentang kolom tertentu. COUNT(*) mengembalikan jumlah peristiwa tanpa menyingkirkan duplikat. Ini menghitung setiap peristiwa secara terpisah. Ini termasuk peristiwa yang berisi nilai null, mengembalikan 0 untuk nilai null.

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

Menentukan grup baris tempat COUNT diterapkan. Klausa PARTITION BY menentukan bahwa baris dengan kunci partisi yang sama akan dikelompokkan bersama-sama. Klausul LIMIT DURATION menentukan berapa banyak riwayat yang disertakan dalam grup. Klausa WHEN menentukan kondisi boolean untuk baris yang akan disertakan dalam grup. Lihat klausa OVER untuk detail selengkapnya tentang penggunaan.

Komentar

  • COUNT(*) mengembalikan jumlah peristiwa termasuk nilai NULL dan duplikat.

  • COUNT(ALL expression) dan COUNT(expression) mengevaluasi ekspresi untuk setiap peristiwa dalam grup dan mengembalikan jumlah nilai non-null.

  • COUNT(EKSPRESI DISTINCT) mengevaluasi ekspresi untuk setiap peristiwa dalam grup dan mengembalikan jumlah nilai unik dan bukan null.

  • COUNT(input_stream) setara dengan COUNT() dan COUNT(*), tetapi COUNT(DISTINCT input_stream) hanya menghitung peristiwa unik.

  • COUNT(EKSPRESI DISTINCT) tidak didukung sebagai fungsi analitik. Artinya, Anda tidak dapat menggunakan COUNT(ekspresi DISTINCT) dengan klausa OVER.

Jenis Kembalian

bigint

Contoh

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

Lihat Juga

Klausa GROUP BY
Klausa OVER