Compartilhar via


MIN (Azure Stream Analytics)

Retorna o valor mínimo na expressão.

Sintaxe

-- Aggregate Function Syntax
MIN ( expression )

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

Argumentos

expressão

É uma constante, um nome da coluna ou uma função e qualquer combinação de operadores aritméticos. Funções de agregação e subconsultas não são permitidas.

O MIN pode ser usado com colunas Bit, Bigint, Datetime e Float.

O MIN também pode ser usado com NVARCHAR(MAX) com o seguinte comportamento:

  • Se a coluna não tiver sido convertida explicitamente em NVARCHAR(MAX), MIN tentará convertê-la implicitamente em FLOAT. Incompatibilidades de tipo resultarão em erros.
  • Se a coluna foi explicitamente convertida em NVARCHAR(MAX) usando CAST ou TRY_CAST, o valor mínimo da cadeia de caracteres será retornado.

OVER ([<Cláusula LIMIT DURATION> da cláusula><PARTITION BY [<cláusula> WHEN]]

Determina o grupo de linhas sobre o qual MIN é aplicado. A cláusula PARTITION BY especifica que as linhas com a mesma chave de partição serão agrupadas. A cláusula LIMIT DURATION especifica a quantidade de histórico incluída no grupo. A cláusula WHEN especifica uma condição booliana para as linhas a serem incluídas no grupo. Consulte a cláusula OVER para obter mais detalhes sobre o uso.

Tipos de retorno

Retorna o mesmo valor da expressão.

Exemplos

Com a sintaxe de agregação, reduziremos o número de linhas. Aqui, selecionamos a tarifa mínima em cada Tarifa a cada hora:

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

Com a sintaxe de análise, mantemos a cardinalidade de entrada. Aqui para cada veículo que passa pelo pedágio, comparamos a tarifa atual com o mínimo na última hora:

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

Consulte Também