Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
✅Eventstream prostředků infrastruktury Azure Stream Analytics ✅
Vrátí minimální hodnotu ve výrazu.
Syntaxe
-- Aggregate Function Syntax
MIN ( expression )
-- Analytic Function Syntax
MIN ( expression ) OVER ([<PARTITION BY clause>] <LIMIT DURATION clause> [<WHEN clause>])
Argumenty
výrazu
Je konstanta, název sloupce nebo funkce a jakákoli kombinace aritmetických operátorů. Agregační funkce a poddotazy nejsou povoleny.
Min se dá použít se sloupci Bit, Bigint, Datetime a Float.
Min lze také použít s NVARCHAR(MAX) s následujícím chováním:
- Pokud sloupec nebyl explicitně přetypován na NVARCHAR(MAX), funkce MIN se pokusí implicitně přetypovat na hodnotu FLOAT. Neshody typů způsobí chyby.
- Pokud byl sloupec explicitně přetypován na NVARCHAR(MAX) pomocí cast nebo TRY_CAST, vrátí se minimální řetězcová hodnota.
OVER ([<KLAUZULE PARTITION BY><LIMIT DURATION – klauzule> [<KLAUZULE WHEN>]]
Určuje skupinu řádků, u kterých se použije min. Klauzule PARTITION BY určuje, že řádky se stejným klíčem oddílu se seskupí dohromady. Klauzule LIMIT DURATION určuje, kolik historie je součástí skupiny. Klauzule WHEN určuje logickou podmínku pro řádky, které mají být zahrnuty do skupiny. Další podrobnosti o využití najdete v klauzuli OVER .
Návratové typy
Vrátí hodnotu stejnou jako výraz.
Příklady
S agregační syntaxí snížíme počet řádků. Tady vybereme minimální jízdné na každé placené po každé hodině:
SELECT
TollId,
System.Timestamp() AS WindowEnd,
MIN(Toll) AS MinFare
FROM Input TIMESTAMP BY EntryTime
GROUP BY
TollId,
TumblingWindow(hour,1)
Pomocí syntaxe analýzy udržujeme vstupní kardinalitu. Tady pro každé vozidlo procházející bezplatnou linkou porovnáme aktuální jízdné s minimálním časem za poslední hodinu:
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