码迷,mamicode.com
首页 > 其他好文 > 详细

每人涨10%的工资,涨的前一共不超过5万,从低工资往高工资的人涨,超过5W则停止涨,问涨的钱花了多少,多少人获得了涨薪。

时间:2018-06-27 18:49:43      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:cas   new   IV   bsp   join   多少   com   case   font   

技术分享图片

 




;with test(CID,money,NewAmount) as ( SELECT Row_Number() over ( order by money ) as CID ,money ,money *0.1 as NewAmount FROM test107 ) select b.CID , SUM(a.NewAmount ) sum_money, b.NewAmount --distinct b.CID ,case when SUM(a.NewAmount ) > 50000 then 0 else b.NewAmount end as 涨薪 from test a left outer join test b on a.CID <= b.CID group by b.CID, b.NewAmount order by b.CID


原表与上述代码结果。
技术分享图片

 


 

每人涨10%的工资,涨的前一共不超过5万,从低工资往高工资的人涨,超过5W则停止涨,问涨的钱花了多少,多少人获得了涨薪。

标签:cas   new   IV   bsp   join   多少   com   case   font   

原文地址:https://www.cnblogs.com/gered/p/9235388.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!