Amazon Redshiftの中央値を求める方法として、PERCENTILE_CONT関数が一般的に使用されます。この関数は、連続分布パーセンタイルの計算を可能にし、特定のレコード範囲の中央値(50パーセンタイル)の算出に役立つ。
以下にその使用例を示します:
SELECT PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY column_name) OVER() AS median
FROM table_name;
このSQLスクリプトでは、まずPERCENTILE_CONT(0.5)という関数によって中央値(50パーセンタイル)を求めます。その結果を、WITHIN GROUP (ORDER BY column_name)を用いて特定の列column_nameの値に従って順に並べた上で、OVER()により全てのデータ行にわたって適用することで、テーブルtable_nameの指定した列の中央値を算出します。