この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
更新日時:2019-11-21 10:13:54
タイトル: パーセンタイルの導き方
SEOタイトル: MySQLにおけるパーセンタイルの導き方
| この記事の要点 |
- MySQL 8 未満でパーセンタイルを計算する SQL
- MySQL 8 未満は
PERCENTILE_CONT がない → GROUP_CONCAT + SUBSTRING_INDEX で代替
- MySQL 8+ なら
PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY col)
- PostgreSQL も同じ Window 関数が使える
|
以下のSLQを実行することでMySQLでパーセンタイルの導き出すことができます
|
SELECT
SUBSTRING_INDEX(
SUBSTRING_INDEX(
GROUP_CONCAT(
t1.val ORDER BY t1.val SEPARATOR ','
)
, ',', 90 / 100 * COUNT(*) + 1
), ',', - 1
) AS `Percentile`
FROM
test_table AS t1
|
上記の例では90%を指定しています。