读书人

用T-SQL怎么写多分支语句

发布时间: 2012-01-15 22:57:48 作者: rapoo

用T-SQL如何写多分支语句
用T-SQL如何写多分支语句

这是一个积分返还金额的问题,如果我的积分范围分这几段
5000~30000 (乘以2%)
30001~50000 (乘以3%)
50001~100000 (乘以4%)
100001以上的 (乘以5%)
比如我现在的积分是67500那么的返还金额应该是
超出50000的部分乘以4%就是17500*4%=700
超出30000的部分乘以3%就是20000*3%=600
剩下的30000*2%=600
那么应该返还金额就是700+600+600=1900

[解决办法]

SQL code
DECLARE @i INTSELECT  CASE WHEN @i > 50000             THEN ( @i - 50000 ) * 0.04 + 20000 * 0.03 + 30000 * 0.02             ELSE CASE WHEN @i BETWEEN 30000 AND 50000                       THEN ( @i - 30000 ) * 0.03 + 30000 * 0.02                       ELSE @i * 0.02                  END        END 

读书人网 >SQL Server

热点推荐