我有样一个表A
货品名称 单价 币制种类 数量
  花生 2.5  人民币  50
  大米 1.8  港币   100
  面粉 1.7  人民币  100
  大豆 0.3  美元   100
现在我想在存储过程实现如下:
以人民币为主如果不是人民币的通过提供的汇率把它转为人民币
架设 港币换人民币为0.86 美元换人民币为6.7
怎么样得到如下:
货品名称  数量  总金额
花生    50  2.5*50
大米    100  (1.8*100)*0.86
面粉    100  1.7*100
大豆    100  (0.3*100)*6.7

解决方案 »

  1.   

    select  货品名称,数量,
            (case when 币制种类='人民币' then 单件*数量 
                   when 币制种类='港币' then 单件*数量*086
                 when 币制种类='美元' then 单件*数量*6.7) 总金额
    from 表
      

  2.   

    select  货品名称,数量, 
            (case when 币制种类='人民币' then 单件*数量 
                  when 币制种类='港币' then 单件*数量*086 
                when 币制种类='美元' then 单件*数量*6.7 end) 总金额 
    from 表
      

  3.   

    select  货品名称,数量, 
            (case when 币制种类='人民币' then 单件*数量 
                  when 币制种类='港币' then 单件*数量*086 
                when 币制种类='美元' then 单件*数量*6.7 end) 总金额 
    from 表
      

  4.   

    select 
      货品名称,  
      数量,
      case 币制种类 
        when '港币' then 单价*数量*0.86 
        when '美元' then 单价*数量*6.7
        when '人民币' then 单价*数量
      end
      as [总金额]
    from A
    group by 货品名称,数量
      

  5.   

    --没有汇率表,只能硬编码
    SELECT 
    货品名称,
    数量 ,
    总金额=单价*数量*(CASE 币制种类 WHEN ‘人民币’ THEN 1.0 WHEN ‘港币’ THEN 0.86 WHEN ‘美元’ THEN 6.7 END)
    FROM