Aggregate Function
max — maximum value of input values
Synopsis
max(number|string) -> number|string
Description
The max aggregate function computes the maximum value of its input.
When determining the max 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
Maximum value of simple numeric sequence:
# spq
max(this)
# input
1
2
3
4
# expected output
4
Maximum of several string values:
# spq
max(this)
# input
"bar"
"foo"
"baz"
# expected output
"foo"
A mix of string and numeric input values results in an error:
# spq
max(this)
# input
1
"foo"
2
# expected output
error("mixture of string and numeric values")
Other unrecognized types in mixed input are ignored:
# spq
max(this)
# input
1
2
3
4
127.0.0.1
# expected output
4
Maximum value within buckets grouped by key:
# spq
max(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,max:2}
{k:2,max:4}