[英]How to bring exchange rate sql query
我有一个表(表 1),其中包含以不同货币存储的付款,另一个表(表 2)包含货币兑换率,如下所示。
表格1
表2
我想导出一个生成数据的查询,如下所示:
无论使用何种货币付款,结果都应根据付款当天的汇率以每行 LEI 和 EUR 显示。
例如。
ID Value Date of payment Currency
XX1 100 10.07.2020 EUR
Date Currency Ex_Rate
10.07.2020 EUR 4.5537
出口应该是:
ID Date of payment Value[LEI] Value[EUR]
XX1 10.07.2020 455.37 100
尝试这个:
SELECT
t1.ID
,t1.date_of_payment
,CASE WHEN t1.currency='LEI' THEN payment ELSE payment*t2.exchange_rate END as Value[LEI]
,CASE WHEN t1.currency='EUR'
THEN payment
ELSE CASE WHEN t1.currency='LEI' THEN payment/t3.exchange_rate
ELSE payment*t2.exchange_rate/t3.exchange_rate
END
END as Value[EUR]
FROM Table1 t1
LEFT JOIN Table2 t2 ON t2.AtDate=t1.date_of_payment and t2.code=t1.currency
LEFT JOIN Table2 t3 ON t3.AtDate=t1.date_of_payment and t3.code='EUR'
据我所知,周末汇率会冻结。 因此,如果您在周末收到付款并且您的周末汇率表中没有条目,您可能必须调整查询。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.