Skip to main content

Aggregates

FunctionArgsReturnsNotes
_count()nonenumberCounts rows
_sum(col)columnnumberSum of a numeric column
_avg(col)columnnumberMean of a numeric column
_min(col)columnscalarMinimum value (any comparable type)
_max(col)columnscalarMaximum value (any comparable type)
_unique(col)columnarrayDistinct values
_asc(col)column(sort)Sort ascending
_desc(col)column(sort)Sort descending
_like(pat)stringboolLIKE pattern match (filter)
_date(col, fmt)column, stringstringFormat/parse a timestamp

Where each makes sense

AggregateUse in projection?Use in filter?Use as sort?
_count()
_sum, _avg, _min, _maxindirectly
_unique
_asc, _desc
_like
_date

Empty inputs

  • _count() returns 0.
  • _sum, _avg, _min, _max return null when applied to an empty input.
  • _unique returns [].

Composing

Aggregates that return data (sum, avg, count, min, max, unique) can appear inside a projection. Sort aggregates (_asc, _desc) attach to a table or relation and don't show up in the output. _like and _date are most useful inside filters.