中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL百分位數如何計算

發布時間:2021-11-01 15:14:03 來源:億速云 閱讀:766 作者:小新 欄目:MySQL數據庫

這篇文章主要為大家展示了“MySQL百分位數如何計算”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“MySQL百分位數如何計算”這篇文章吧。

  1. select query_time,d,max(ts) ts from (

  2.     select t2.query_time,ts,rn,round(rn/total,10) percent,

  3.     case

  4.     when 0.71>=round(rn/total,10) then 0.71

  5.     when 0.81>=round(rn/total,10) then 0.81

  6.     when 0.91>=round(rn/total,10) then 0.91

  7.     end d

  8.     from (

  9.         select query_time,ts,

  10.         case when @gid=query_time then @rn:=@rn+1 when @gid:=query_time then @rn:=1 end rn

  11.         from (

  12.             select * from t ,(select @gid:='',@rn:=0) vars order by query_time,ts

  13.         ) t1

  14.     ) t2 inner join (

  15.         select query_time,count(*) total from t group by query_time

  16.     ) t3 on(t2.query_time=t3.query_time)

  17.     where round(rn/total,10)>=0.71

  18. ) t6

  19. where d is not null

  20. group by query_time,d


 where round(rn/total,10)>=0.71
即 用定義的最小的百分位數進行過濾后,再group by

此時 查詢時間可以低至 20.531 s

當然,這個SQL還有進一步提升的空間

計算 某個百分位數的位置,有如下的公式:
loc=1+(n-1)*p,n是元素數,p是分位點。loc大小介于1和n之間

那么SQL可以進行如下優化


  1. select t5.query_time,t5.ts,t2.v from (

  2.     select query_time,total,v, floor(1+(total-1)*v) rn

  3.     from (

  4.          select query_time,count(*) total from t group by query_time

  5.     ) t3, (select 0.71 v,1 seq union all select 0.81,2 union all select 0.91,3) t4

  6. )

  7. t2 inner join (

  8.     select

  9.     query_time,

  10.     case when @gid=query_time then @rn:=@rn+1 when @gid:=query_time then @rn:=1 end rn,

  11.     ts

  12.     from (

  13.         select * from t ,(select @gid:='',@rn:=0) vars order by query_time,ts

  14.     ) t1

  15. ) t5 on (t2.query_time=t5.query_time and t2.rn=t5.rn )


除了本身簡化了SQL復雜度,查詢時間也低至 15秒左右

以上是“MySQL百分位數如何計算”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

邵阳县| 平谷区| 临猗县| 泾川县| 宕昌县| 德保县| 东宁县| 尖扎县| 黑水县| 延寿县| 桐梓县| 宁化县| 塔城市| 阜南县| 思南县| 大连市| 乐昌市| 乐至县| 楚雄市| 古交市| 秦皇岛市| 永康市| 南昌市| 江孜县| 宕昌县| 吴忠市| 丹东市| 平谷区| 和政县| 临桂县| 高安市| 湘潭市| 宁都县| 西乌| 东源县| 宁津县| 静宁县| 北海市| 阳谷县| 乌鲁木齐市| 拜泉县|