New versions: Dev (3.15) | Latest (3.14) | 3.13 | 3.12 | 3.11 | 3.10 | 3.9 | 3.8 | Old versions: 3.7 | 3.6 | 3.5 | 3.3

MEDIAN

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The MEDIAN() aggregate function calculates the median value of all input values. MEDIAN(x) is equivalent to standard SQL PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY x), see PERCENTILE_CONT.

SELECT median(ID)
FROM BOOK
create.select(median(BOOK.ID))
      .from(BOOK)

Producing:

+--------+
| median |
+--------+
|    2.5 |
+--------+

Dialect support

This example using jOOQ:

median(BOOK.ID)

Translates to the following dialect specific expressions:

-- AURORA_POSTGRES, POSTGRES
percentile_cont(0.5) WITHIN GROUP (ORDER BY BOOK.ID)

-- CUBRID, H2, HSQLDB, MARIADB, ORACLE, SYBASE, TERADATA
median(BOOK.ID)

-- ACCESS, ASE, AURORA_MYSQL, COCKROACHDB, DB2, DERBY, FIREBIRD, HANA, INFORMIX, INGRES, MEMSQL, MYSQL, REDSHIFT, 
-- SQLDATAWAREHOUSE, SQLITE, SQLSERVER, VERTICA
/* UNSUPPORTED */

(These are currently generated with jOOQ 3.15, see #10141)

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo