Condividi tramite


MIN (Analisi dei flussi di Azure)

Restituisce il valore minimo nell'espressione.

Sintassi

-- Aggregate Function Syntax
MIN ( expression )

-- Analytic Function Syntax
MIN ( expression ) OVER ([<PARTITION BY clause>] <LIMIT DURATION clause> [<WHEN clause>])

Argomenti

expression

Costante, nome di colonna o funzione e qualsiasi combinazione di operatori aritmetici. Non è possibile utilizzare funzioni di aggregazione e sottoquery.

MIN può essere usato con colonne Bit, Bigint, Datetime e Float.

È anche possibile usare MIN con NVARCHAR(MAX) con il comportamento seguente:

  • Se la colonna non è stata eseguita in modo esplicito su NVARCHAR(MAX), MIN tenterà di eseguirne il cast implicito in FLOAT. Le mancate corrispondenze di tipo comportano errori.
  • Se la colonna è stata eseguita in modo esplicito su NVARCHAR(MAX) usando CAST o TRY_CAST, verrà restituito il valore stringa minimo.

OVER ([<CLAUSOLA PARTITION BY><LIMIT DURATION> [<CLAUSOLA> WHEN]]

Determina il gruppo di righe su cui viene applicato MIN. La clausola PARTITION BY specifica che le righe con la stessa chiave di partizione verranno raggruppate. La clausola LIMIT DURATION specifica la quantità di cronologia inclusa nel gruppo. La clausola WHEN specifica una condizione booleana per le righe da includere nel gruppo. Per altre informazioni sull'utilizzo, vedere la clausola OVER .

Tipi restituiti

Restituisce un valore uguale all'espressione.

Esempio

Con la sintassi di aggregazione, si ridurrà il numero di righe. Qui selezioniamo la tariffa minima a ogni pedaggio ogni ora:

SELECT
  TollId,
  System.Timestamp() AS WindowEnd,
  MIN(Toll) AS MinFare
FROM Input TIMESTAMP BY EntryTime
GROUP BY
  TollId,
  TumblingWindow(hour,1)

Con la sintassi di analisi, viene mantenuta la cardinalità di input. Qui per ogni veicolo che attraversa il pedaggio, confrontiamo la tariffa corrente al minimo nell'ultima ora:

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

Vedere anche