Partager via


MIN (Azure Stream Analytics)

Retourne la valeur minimale de l'expression.

Syntaxe

-- Aggregate Function Syntax
MIN ( expression )

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

Arguments

expression

Constante, nom de colonne ou fonction, et toute combinaison d'opérateurs arithmétiques. Les fonctions d'agrégation et les sous-requêtes ne sont pas autorisées.

MIN peut être utilisé avec les colonnes Bit, Bigint, Datetime et Float.

MIN peut également être utilisé avec NVARCHAR(MAX) avec le comportement suivant :

  • Si la colonne n’a pas été explicitement convertie en NVARCHAR(MAX), MIN tente de la convertir implicitement en FLOAT. Les incompatibilités de type entraînent des erreurs.
  • Si la colonne a été explicitement convertie en NVARCHAR(MAX) à l’aide de CAST ou de TRY_CAST, la valeur de chaîne minimale est retournée.

OVER ([<CLAUSE LIMIT DURATION> de la clause><PARTITION BY [<clause> WHEN]]

Détermine le groupe de lignes sur lequel MIN est appliqué. La clause PARTITION BY spécifie que les lignes avec la même clé de partition seront regroupées. La clause LIMIT DURATION spécifie la quantité d’historique incluse dans le groupe. La clause WHEN spécifie une condition booléenne pour les lignes à inclure dans le groupe. Pour plus d’informations sur l’utilisation, consultez la clause OVER .

Types de retour

Renvoie une valeur identique à l'expression.

Exemples

Avec la syntaxe d’agrégation, nous allons réduire le nombre de lignes. Ici, nous sélectionnons le tarif minimum à chaque péage toutes les heures :

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

Avec la syntaxe d’analytique, nous conservons la cardinalité d’entrée. Ici, pour chaque véhicule passant par le péage, nous comparons le prix actuel au minimum de la dernière heure :

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

Voir aussi