在 SQL 中,用于計算百分位數的函數是 PERCENTILE_CONT() 和 PERCENTILE_DISC()。
PERCENTILE_CONT() 函數用于計算連續型數據的百分位數,即在一個有序集合中,返回指定百分位數對應的值。語法如下:
PERCENTILE_CONT(percentage) WITHIN GROUP (ORDER BY column_name)
其中,percentage 是要計算的百分位數(范圍為0到1),column_name 是要計算的列名。
舉例來說,如果要計算某列中值的中位數(即百分位數為0.5),可以使用以下語句:
SELECT PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY column_name) FROM table_name;
PERCENTILE_DISC() 函數用于計算離散型數據的百分位數,返回在有序集合中最接近指定百分位數的值。語法如下:
PERCENTILE_DISC(percentage) WITHIN GROUP (ORDER BY column_name)
其中,percentage 是要計算的百分位數(范圍為0到1),column_name 是要計算的列名。
舉例來說,如果要計算某列中最接近中位數的值(即百分位數為0.5),可以使用以下語句:
SELECT PERCENTILE_DISC(0.5) WITHIN GROUP (ORDER BY column_name) FROM table_name;