Skip to content

min_by

Description

Returns the value of an expression associated with the minimum value of a given sort key.

  • Both sortKey and expression must be comparable types (string, bool, number, interval, timestamp, regexp, or enum).
  • Useful for retrieving details from the row that has the earliest or smallest value of another field.

Syntax

min_by(sortKey: T, expression: U): U

Arguments

NameTypeRequiredDescription
sortKeyTtrueField to minimize. Must be string, bool, number, interval, timestamp, regexp, or enum
expressionUtrueValue to return from the row with the minimum sortKey. Must be a comparable type

Example

Use case: Retrieve details of the earliest event per user

Suppose you want to know the first activity performed by each user. You can use min to compute the earliest timestamp and min_by to extract the associated details.

{ "username": "chris", "path": "/home", "latency": 320, "ts": 1728919749261000000 },
{ "username": "chris", "path": "/checkout", "latency": 5000, "ts": 1728919759261000000 }
groupby username aggregate min(ts) as ts, min_by(ts, path) as path

Output

usernamepathts
chris/home1728919749261000000