数学汇率

问题描述 投票:1回答:1

目前我有一个汇率从美元>货币的数据库

+----------+---------+
| Currency | USDRate |
+----------+---------+
| USD      | 1.00    |
| GBP      | 0.7418  |
| SEK      | 8.29    |
+----------+---------+

我一直在做的简单数学就是将USD兑换成我网站上的另一种货币:

price * rate

但是,如果我想做GBP到USD,我会尝试以下方法:

price * (rate - 1 * rate)

应该是这么简单的数学,但它完全抛弃了我。

math currency
1个回答
2
投票

这个答案假设你有一个表,一列货币,例如GBP,你要转换为SEK,例如

prices
1.35
1.07
4.53
...

如果您想将英镑价格转换为SEK,您可以使用以下公式:

price * (1 / rate_GBP) * (rate_SEK) = price in SEK

要使用您的外汇表,您可以将价格表加入两次。这可以通过以下查询来实现:

SELECT
    p.prices AS orig_price_gbp,
    p.prices * (1 / r1.USDRate) * (r2.USDRate)
FROM table_prices p
INNER JOIN rates r1
    ON r1.Currency = 'GBP'
INNER JOIN rates r2
    ON r2.Currency = 'SEK';

这里没什么魔力;基本思路是将每个价格的源汇率和目的地汇率一起使用,然后应用公式来做外汇。

© www.soinside.com 2019 - 2024. All rights reserved.