MEDIAN
Returns the middle value in a given column. If number of values are even, MEDIAN
returns the average of the two middle values.
Syntax
MEDIAN(<value>)
Parameters
Parameter | Description | Supported input types |
---|---|---|
<value> | The expression used to calculate the median value. | DOUBLE PRECISION , REAL , BIGINT , INT |
Return Type
MEDIAN
returns a value of type DOUBLE PRECISION
.
- This function ignores
NULL
values. - If the input is empty, the function returns
NULL
.
Examples
Example
The following query uses UNNEST
to convert an array [1,2,5] into a column, calculates the median value, and returns it as result
:
SELECT MEDIAN(a) as result FROM UNNEST(array[1,2,5]) as a;
Returns
result (DOUBLE PRECISION) |
---|
2 |
The previous code example returns the middle element as the median because the number of elements in the array is odd.
Example
The following query uses UNNEST
to convert an array [100, NULL, 1, 2, 5] into a column, calculates the median value, and returns it as result
:
SELECT MEDIAN(a) as result FROM UNNEST(array[100,NULL,1,2,5]) as a;
Returns
result (DOUBLE PRECISION) |
---|
3.5 |
The previous code example returns the average of the two middle elements after sorting the values, because the number of non-NULL
elements is even after ignoring NULL
values. The average of the middle elements, 2
and 5
, is calculated as : ((2+5)/2)
.