在sql中转换的转移总和

时间:2016-11-28 07:35:56

标签: sql postgresql

我有一张可以节省客户转账的表格。我想要一个sql查询,它以基本货币获得转账总额。例如,如果转账是以美元计算的,我必须以基础货币获得这笔金额。我有另一张表存储货币并处理货币之间的转换率。 如何使用单个SQL查询获得基础货币的转移总和?

表格如下

  1. 转移(transfer_id,trf_type,货币(参考货币),金额)
  2. 货币(货币,汇率)其中汇率是指基础货币
  3. 以下是我尝试但未处理货币转换的内容:

    Select 
    Case
    When transfer.trf_type = 'I' then 'Transfer From the inside'
    When transfer.trf_type = 'o' then 'Transfer fom the outside'
    
    End AS type ,
    Count(transfer.trf_type) ,
    Sum(transfer.amount)
    From transfer
    Group By transfer.trf_type
    

    我该怎么做?上述查询的输出如下: enter image description here

1 个答案:

答案 0 :(得分:1)

select 
    case
        when transfer.trf_type = 'I' then 'Transfer From the inside'
        when transfer.trf_type = 'o' then 'Transfer fom the outside'
    end AS type,
    count(transfer.trf_type),
    sum(transfer.amount * currency.rate)
from transfer
inner join currency using(currency)
group By transfer.trf_type;