MIN (Azure Stream Analytics)
A kifejezésben szereplő minimális értéket adja vissza.
Szintaxis
-- Aggregate Function Syntax
MIN ( expression )
-- Analytic Function Syntax
MIN ( expression ) OVER ([<PARTITION BY clause>] <LIMIT DURATION clause> [<WHEN clause>])
Argumentumok
expression
Állandó, oszlopnév vagy függvény, valamint az aritmetikai operátorok bármilyen kombinációja. Az összesítő függvények és al lekérdezések nem engedélyezettek.
A MIN a Bit, Bigint, Datetime és Float oszlopokkal használható.
A MIN az NVARCHAR(MAX) esetében is használható a következő viselkedéssel:
- Ha az oszlopot nem explicit módon az NVARCHAR(MAX) értékre öntötték, akkor a MIN implicit módon megpróbálja float-ra tenni. A típuseltérések hibákat eredményeznek.
- Ha az oszlop explicit módon át lett adva az NVARCHAR(MAX) értékre CAST vagy TRY_CAST használatával, akkor a rendszer a minimális sztringértéket adja vissza.
OVER ([<PARTITION BY záradék><LIMIT DURATION záradék> [<WHEN záradék>]]
Meghatározza azt a sorcsoportot, amelyre a MIN értéket alkalmazza. A PARTITION BY záradék azt határozza meg, hogy az azonos partíciókulccsal rendelkező sorok csoportosítva legyenek. A LIMIT DURATION záradék határozza meg, hogy mennyi előzmény szerepel a csoportban. A WHEN záradék logikai feltételt ad meg a csoportba foglalandó sorokhoz. A használattal kapcsolatos további részletekért lásd az OVER záradékot .
Visszatérési típusok
A kifejezéssel megegyező értéket ad vissza.
Példák
Az összesítési szintaxissal csökkentjük a sorok számát. Itt minden óránként kiválasztjuk az egyes díjfizetési díjak minimális viteldíját:
SELECT
TollId,
System.Timestamp() AS WindowEnd,
MIN(Toll) AS MinFare
FROM Input TIMESTAMP BY EntryTime
GROUP BY
TollId,
TumblingWindow(hour,1)
Az elemzési szintaxissal megőrizzük a bemeneti számosságot. Itt az útdíjon áthaladó összes jármű esetében összehasonlítjuk az aktuális viteldíjat az elmúlt óra minimális viteldíjával:
SELECT
TollId,
System.Timestamp() AS PassageTime,
LicensePlate,
Toll AS Fare,
MIN (Toll) OVER (PARTITION BY VehicleClass LIMIT DURATION(hour,1)) AS MinimumFareOverLastHour
FROM Input TIMESTAMP BY EntryTime