SQL查询计算的问题

xubxuq 2012-11-01 08:41:35
表tableA
id cyid amout
1 100 555
2 101 666
3 103 777

当cyid表示的值100表示RMB 101表示HKD(汇率0.81) 102表示美元(汇率6.21),请问在对金额进行SUM的时候,将所有的金额转化为RMB呢。。
...全文
51 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
二楼的方法不错,顶一下
  • 打赏
  • 举报
回复
select sum( case cyid when 100 then amount*1 when 101 then amount*0.81 when 102 then amount*6.21 end )
from tb

或者

select sum( amount*(case cyid when 100 then 1 when 101 then 0.81 when 102 then 6.21 end) )
from tb
  • 打赏
  • 举报
回复
select sum( case cyid when 100 then amount*1 when 101 then amount*0.81 when 102 then amount*6.21)
from tb

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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