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

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.设备序列号
...全文
106 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧