数据库中记录累加的问题

   在项目中遇到了记录累加的问题,在论坛上遇到了同样的提问并且问答简单,大同小异,特总结如下:

 

   现在数据库中有一个表:
   表名:a
   字段名     类型
   YMDHM       Datetime 
   DTRN          Numeric(5,1)
  

   表中的数据为
   YMDHM                                               DTRN    
   2004-4-8   23:00:00                           1
   2004-4-9   00:00:00                           0
   2004-4-9   01:00:00                           0.5
   2004-4-9   02:00:00                           1
   2004-4-9   03:00:00                           0.5
   2004-4-9   04:00:00                           1.5
  

   需要将表中DTRN的数据进行累加并在每天23:59:59   自动清零(即只累加一天的数据),累加后的表应为
   YMDHM                                               DTRN         D
   2004-4-8   23:00:00                           1              1
   2004-4-9   00:00:00                           0              0 
   2004-4-9   01:00:00                           0.5           0.5    
   2004-4-9   02:00:00                           1              1.5
   2004-4-9   03:00:00                           0.5           2
   2004-4-9   04:00:00                           1.5           3.5

 

答案:

   select   YMDHM,DTRN,D=

      (

          select   sum(DTRN)   from   a  
          where   YMDHM <=aa.YMDHM   and   datediff(day,YMDHM,aa.YMDHM)=0

      )
   from   a

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值