[discrete] [[esql-agg-median]] === `MEDIAN` *Syntax* [source,esql] ---- MEDIAN(expression) ---- *Parameters* `expression`:: Expression from which to return the median value. *Description* Returns the value that is greater than half of all values and less than half of all values, also known as the 50% <>. NOTE: Like <>, `MEDIAN` is <>. [WARNING] ==== `MEDIAN` is also {wikipedia}/Nondeterministic_algorithm[non-deterministic]. This means you can get slightly different results using the same data. ==== *Example* [source.merge.styled,esql] ---- include::{esql-specs}/stats_percentile.csv-spec[tag=median] ---- [%header.monospaced.styled,format=dsv,separator=|] |=== include::{esql-specs}/stats_percentile.csv-spec[tag=median-result] |=== The expression can use inline functions. For example, to calculate the median of the maximum values of a multivalued column, first use `MV_MAX` to get the maximum value per row, and use the result with the `MEDIAN` function: [source.merge.styled,esql] ---- include::{esql-specs}/stats_percentile.csv-spec[tag=docsStatsMedianNestedExpression] ---- [%header.monospaced.styled,format=dsv,separator=|] |=== include::{esql-specs}/stats_percentile.csv-spec[tag=docsStatsMedianNestedExpression-result] |===