Aggregate Function
min — minimum value of input values
Synopsis
min(number|string) -> number|string
Description
The min aggregate function computes the minimum value of its input.
When determining the min of string inputs, values are compared via byte order. This is equivalent to C/POSIX collation as found in other SQL databases such as Postgres.
Examples
Minimum value of simple numeric sequence:
# spq
min(this)
# input
1
2
3
4
# expected output
1
Minimum of several string values:
# spq
min(this)
# input
"foo"
"bar"
"baz"
# expected output
"bar"
A mix of string and numeric input values results in an error:
# spq
min(this)
# input
1
"foo"
2
# expected output
error("mixture of string and numeric values")
Other unrecognized types in mixed input are ignored:
# spq
min(this)
# input
1
2
3
4
127.0.0.1
# expected output
1
Minimum value within buckets grouped by key:
# spq
min(a) by k | sort
# input
{a:1,k:1}
{a:2,k:1}
{a:3,k:2}
{a:4,k:2}
# expected output
{k:1,min:1}
{k:2,min:3}