日期:2014-05-18  浏览次数:20377 次

重发查询表问题
表1
发票日期               回款日期               金额1           金额2               业务员    
2007-02-01           2007-03-01           1000             100                   张三        

要生成如下格式的表

发票日期               回款日期               金额1           金额2               业务员             绩效
2007-02-01           2007-03-01           1000             100                   张三                 60

绩效的考核规则如下:
回款日期 <=4个月,绩效=金额2×60%
回款日期> 4个月,   绩效=0
回款日期> 6个月,   绩效=-(金额1×1%)

在线等高手


------解决方案--------------------
修改一下:
select 发票日期,回款日期,金额1,金额2,业务员,case when datediff(month,发票日期,回款日期) <= 4 then 金额2*60% when datediff(month,发票日期,回款日期)> 4 and datediff(month,发票日期,回款日期) <=6 then 0 when datediff(month,发票日期,回款日期)> 6 then 金额1*(-0.01) end as 绩效 from 表1
------解决方案--------------------
%是不能用的:
select 发票日期,回款日期,金额1,金额2,业务员,case when datediff(month,发票日期,回款日期) <= 4 then 金额2*0.6 when datediff(month,发票日期,回款日期)> 4 and datediff(month,发票日期,回款日期) <=6 then 0 when datediff(month,发票日期,回款日期)> 6 then 金额1*(-0.01) end as 绩效 from 表1