Aggregation Functions
agg.first()
Get the first non-null element from a list.
Syntax: agg.first(list)
Returns: Any - First non-null value
APOC Compatible: apoc.agg.first
RETURN agg.first([null, "a", "b"]) AS result
// Returns: "a"
agg.last()
Get the last non-null element from a list.
Syntax: agg.last(list)
Returns: Any - Last non-null value
APOC Compatible: apoc.agg.last
agg.maxItems()
Get items with maximum value.
Syntax: agg.maxItems(list, valueFunction)
Returns: List - Items with maximum value
APOC Compatible: apoc.agg.maxItems
agg.median()
Calculate the median of a list of numbers.
Syntax: agg.median(list)
Returns: Double - Median value
APOC Compatible: apoc.agg.median
RETURN agg.median([1, 2, 3, 4, 5]) AS result
// Returns: 3.0
RETURN agg.median([1, 2, 3, 4]) AS result
// Returns: 2.5
agg.minItems()
Get items with minimum value.
Syntax: agg.minItems(list, valueFunction)
Returns: List - Items with minimum value
APOC Compatible: apoc.agg.minItems
agg.nth()
Get the nth element from a list.
Syntax: agg.nth(list, n)
Returns: Any - Element at index n
APOC Compatible: apoc.agg.nth
agg.percentiles()
Calculate percentiles of a list of numbers.
Syntax: agg.percentiles(list, percentiles)
Returns: List - Percentile values
APOC Compatible: apoc.agg.percentiles
agg.product()
Calculate the product of a list of numbers.
Syntax: agg.product(list)
Returns: Double - Product of all values
APOC Compatible: apoc.agg.product
agg.slice()
Get a slice of a list.
Syntax: agg.slice(list, start, [end])
Returns: List - Sliced list
APOC Compatible: apoc.agg.slice
agg.statistics()
Get full statistics for a list of numbers.
Syntax: agg.statistics(list)
Returns: Map - Statistics map with count, min, max, sum, mean, stdev, median
APOC Compatible: apoc.agg.statistics
RETURN agg.statistics([1, 2, 3, 4, 5]) AS stats
// Returns: {count: 5, min: 1.0, max: 5.0, sum: 15.0, mean: 3.0, stdev: 1.414, median: 3.0}