SQL存储过程——求每小时的99分位数

第二篇博客,想分享一下在实习工作中一个SQL的存储过程。在写这个存储过程的时候,查阅了各大百度,贴吧,博客上的资料,但是均是没有找到99分位数的写法。可能是这个的应用场景较少吧。但是也希望会对一些童鞋有帮助。

99分位数的逻辑想必大家都清楚,总共三步:
第一,
针对这一小时内的所有数据,按照从小到大进行排序
第二,
计算99分位所在的位置,0.99×(数据的总数)
(向上取整还是向下取整看自身的需求)
第三,
最后取该位置所在的数据。

下面开始进行正文了,写存储过程。(99分位数的情况逻辑简单,若是用PYTHON写是很简单的,写个函数就能解决,但是在SQL中还是比较复杂的,普通的SQL语句还是不容易实现)

DELIMITER $
CREATE PROCEDURE cal_time_minute()
BEGIN
    DECLARE _index_cal BIGINT(11); --索引位置
    
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值