Megosztás a következőn keresztül:


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

Lásd még: