可用版本: Dev (3.21) | 最新 (3.20) | 3.19 | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

PERCENTILE_DISC

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

PERCENTILE_DISC() 聚合函数是一个 有序集合函数,用于计算所有输入值的给定离散百分位数。

SELECT
  percentile_disc(0.00) WITHIN GROUP (ORDER BY ID),
  percentile_disc(0.25) WITHIN GROUP (ORDER BY ID),
  percentile_disc(0.50) WITHIN GROUP (ORDER BY ID),
  percentile_disc(0.75) WITHIN GROUP (ORDER BY ID),
  percentile_disc(1.00) WITHIN GROUP (ORDER BY ID)
FROM BOOK
create.select(
         percentileDisc(0.00).withinGroupOrderBy(BOOK.ID),
         percentileDisc(0.25).withinGroupOrderBy(BOOK.ID),
         percentileDisc(0.50).withinGroupOrderBy(BOOK.ID),
         percentileDisc(0.75).withinGroupOrderBy(BOOK.ID),
         percentileDisc(1.00).withinGroupOrderBy(BOOK.ID))
      .from(BOOK)

产生

+------+------+------+------+------+
| 0.00 | 0.25 | 0.50 | 0.75 | 1.00 |
+------+------+------+------+------+
|    1 |    1 |    2 |    3 |    4 |
+------+------+------+------+------+

方言支持

此示例使用 jOOQ

percentileDisc(0.00).withinGroupOrderBy(BOOK.ID)

翻译成以下特定方言的表达式

Aurora Postgres, Postgres, YugabyteDB

percentile_disc(CAST(0E0 AS double precision)) WITHIN GROUP (ORDER BY BOOK.ID)

BigQuery

percentile_disc(BOOK.ID, 0E0)

Databricks, DuckDB, Exasol, MariaDB, MemSQL, Oracle, Redshift, Snowflake, Teradata

percentile_disc(0E0) WITHIN GROUP (ORDER BY BOOK.ID)

DB2、H2

percentile_disc(CAST(0E0 AS double)) WITHIN GROUP (ORDER BY BOOK.ID)

SQLDataWarehouse, SQLServer

percentile_disc(CAST(0E0 AS float)) WITHIN GROUP (ORDER BY BOOK.ID)

ASE, Access, Aurora MySQL, ClickHouse, CockroachDB, Derby, Firebird, HSQLDB, Hana, Informix, MySQL, SQLite, Sybase, Trino, Vertica

/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL

反馈

您对此页面有任何反馈吗?我们很乐意听取您的意见!

The jOOQ Logo