代码求优化,并最终根据设备序列号求和

escaflowne945 2015-09-22 03:17:25
最终求和 根据设备序列号求分润封顶,分润78,分润38


select * ,ISNULL(分润封顶,0)as 封顶分润,ISNULL(分润78,0)as[78分润],ISNULL(分润38,0)as[38分润]
from
(select aa.设备序列号,sum(case when aa.收入金额>3333 and aa.是否封顶=1 then cast((aa.利润-1)as float) end)as 分润封顶
from (
select 交易.*,费率.是否封顶,费率.利润
from 交易,费率
where 交易.设备序列号=费率.设备号
)aa
group by 设备序列号)abc
left join
(
select aa.设备序列号,sum(case when aa.收入金额<3333 and aa.是否封顶=1 then cast((0.0014*aa.收入金额)as float) end)as 分润78
from (
select 交易.*,费率.是否封顶,费率.利润
from 交易,费率
where 交易.设备序列号=费率.设备号
)aa
group by 设备序列号)fenrun
on abc.设备序列号=fenrun.设备序列号
left join
(
select aa.设备序列号,sum(case when aa.代理费率='0.0033' then cast((0.0005*aa.收入金额)as float) end)as 分润38
from (
select 交易.*,费率.是否封顶,费率.利润,费率.代理费率
from 交易,费率
where 交易.设备序列号=费率.设备号
)aa
group by 设备序列号)ffenrun
on abc.设备序列号=ffenrun.设备序列号
...全文
75 点赞 收藏 回复
写回复
回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2015-09-22 03:17
社区公告
暂无公告