【SQL】sql的累加/追加上条记录

lag()函数:查询当前行向上偏移n行对应的结果

该函数有三个参数:第一个为待查询的参数列名,第二个为向上偏移的位数,第三个参数为超出最上面边界的默认值。

lead()函数:查询当前行向下偏移n行对应的结果

该函数有三个参数:第一个为待查询的参数列名,第二个为向下偏移的位数,第三个参数为超出最下面边界的默认值。

实例:当前的sda加上前一条记录的sda

    原表tt:

        20220421    11.2323232333  

        20220422    12.34322318

        20220423    14.093044  

    代码sql:

        select

        tradedate

        ,sda

        ,sda+lag(sda,1,0)over(ORDER BY tradedate)

        as sum

        from tt

    运行结果:

        20220421    11.2323232333   11.2323232333

        20220422    12.34322318     23.575546413300003

        20220423    14.093044       26.43626718


sum() over() 函数用于累加计算

实例:当前的sda加上前一条及以前的所有记录的sda

    原表tt:

        20220421    11.2323232333  

        20220422    12.34322318

        20220423    14.093044  

    代码sql:

        select

        tradedate

        ,sda

        ,sum(sda)over(ORDER BY tradedate)

        as sum

        from tt

    运行结果:

        20220421    11.2323232333   11.2323232333

        20220422    12.34322318       23.575546413300003

        20220423    14.093044           37.6685904133

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值