TopOne (Azure Stream Analytics)
Mengembalikan rekaman peringkat teratas, di mana peringkat menentukan posisi peringkat peristiwa di jendela sesuai dengan pengurutan yang ditentukan. Pengurutan/peringkat didasarkan pada kolom peristiwa dan dapat ditentukan dalam klausa ORDER BY.
Sintaks
-- Aggregate Function Syntax
TopOne( [ <scalar_expression> ] ) OVER (ORDER BY (<column name> [ASC |DESC])+)
-- Analytic Function Syntax
TopOne( [ <scalar_expression> ] ) OVER ([<PARTITION BY clause>] ORDER BY (<column name> [ASC |DESC])+ <LIMIT DURATION clause> [<WHEN clause>])
Argumen
<scalar_expression>
TopOne mengambil ekspresi skalar opsional yang memungkinkan Anda menentukan proyeksi di atas peristiwa. Tanpa parameter , rekaman peristiwa lengkap dikembalikan.
<column_name>
Menentukan nama kolom dalam peristiwa input tempat pengurutan akan dilakukan. Perhatikan bahwa hanya pemesanan berdasarkan jenis bigint, float, dan datetime yang diizinkan.
OVER ([<klausa><PARTITION BY LIMIT DURATION clause> [<WHEN clause>]]
Menentukan grup baris tempat TopOne diterapkan. Klausa PARTITION BY menentukan bahwa baris dengan kunci partisi yang sama akan dikelompokkan bersama. Klausa LIMIT DURATION menentukan berapa banyak riwayat yang disertakan dalam grup. Klausa WHEN opsional menentukan kondisi boolean agar baris disertakan dalam grup. Lihat klausa OVER untuk detail selengkapnya tentang penggunaan.
Jenis Pengembalian
Nilai yang diproyeksikan <scalar_expression>
oleh parameter, atau nilai rekaman jika tidak ada parameter yang disediakan.
Contoh
SELECT
TopOne() OVER (ORDER BY value DESC) as topEvent
FROM input
GROUP BY Tumbling(second, 10)
SELECT
TopOne(x * y) OVER (ORDER BY value DESC) as topEvent
FROM input
GROUP BY Tumbling(second, 10)