首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >percentile_disc vs percentile_cont

percentile_disc vs percentile_cont
EN

Stack Overflow用户
提问于 2014-05-11 03:57:41
回答 2查看 26.7K关注 0票数 23

PERCENTILE_DISCPERCENTILE_CONT之间的区别是什么,

我有一个表### select * from childstat

代码语言:javascript
复制
FIRSTNAME                                          GENDER BIRTHDATE     HEIGHT     WEIGHT
-------------------------------------------------- ------ --------- ---------- ----------
lauren                                             f      10-JUN-00         54        876 
rosemary                                           f      08-MAY-00         35        123 
Albert                                             m      02-AUG-00         15        923 
buddy                                              m      02-OCT-00         15        150 
furkar                                             m      05-JAN-00         76        198 
simon                                              m      03-JAN-00         87        256 
tommy                                              m      11-DEC-00         78        167 

我试着区分这些百分位数

代码语言:javascript
复制
select firstname,height,
       percentile_cont(.50) within group (order by height) over() as pctcont_50_ht,
       percentile_cont(.72) within group (order by height) over() as pctcont_72_ht,
       percentile_disc(.50) within group (order by height) over () as pctdisc_50_ht,
       percentile_disc(.72) within group (order by height) over () as pctdisc_72_ht
from childstat order by height


FIRSTNAME                                              HEIGHT PCTCONT_50_HT PCTCONT_72_HT PCTDISC_50_HT PCTDISC_72_HT
-------------------------------------------------- ---------- ------------- ------------- ------------- -------------
buddy                                                      15            54         76.64            54            78 
Albert                                                     15            54         76.64            54            78 
rosemary                                                   35            54         76.64            54            78 
lauren                                                     54            54         76.64            54            78 
furkar                                                     76            54         76.64            54            78 
tommy                                                      78            54         76.64            54            78 
simon                                                      87            54         76.64            54            78 

但是仍然无法理解这两个函数是如何实现的,以及这两个函数的用途是什么。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-11 04:55:20

PERCENTILE_DISC在集合/窗口中返回一个值,而PERCENTILE_CONT将进行插值;

在查询中,当您使用.72时,PERCENTILE_CONT会在76和78之间进行插值,因为72%不是其中之一;PERCENTILE_DISC选择76 (其中最低的一个)

票数 29
EN

Stack Overflow用户

发布于 2019-09-13 22:09:38

我发现这个解释很有帮助,http://mfzahirdba.blogspot.com/2012/09/difference-between-percentilecont-and.html

代码语言:javascript
复制
    ITEM REGION             WK FORECASTQTY
    ---- ---------- ---------- -----------
    TEST E                   3         137
    TEST E                   2         190
    TEST E                   1         232
    TEST E                   4         400



SELECT
   t.* ,
   PERCENTILE_CONT(0.5)
   WITHIN GROUP ( ORDER BY forecastqty)
   OVER (PARTITION BY ITEM , region ) AS PERCENTILE_CONT ,
   MEDIAN(forecastqty)
   OVER (PARTITION BY ITEM , region ) AS MEDIAN ,
   PERCENTILE_DISC(0.5)
   WITHIN GROUP ( ORDER BY forecastqty)
   OVER (PARTITION BY ITEM , region ) AS PERCENTILE_DISC
   FROM
   t ;



    ITEM REGION             WK FORECASTQTY PERCENTILE_CONT     MEDIAN PERCENTILE_DISC
    ---- ---------- ---------- ----------- --------------- ---------- ---------------
    TEST E                   3         137             211        211             190
    TEST E                   2         190             211        211             190
    TEST E                   1         232             211        211             190
    TEST E                   4         400             211        211             190
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23585667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档