我有2张桌子。
我的第一个桌子如下:
Date USD EUR Count_ids
2018-06-09 5.00 8 1
2018-06-09 15.00 20 3
2018-06-09 5.00 11 1
2018-06-09 45.00 24 2
我的第二张表包含每日货币汇率;
+----+-------------------------+------------+------+-----+-------+
| Id | Date | Convertion | From | To | Rate |
+----+-------------------------+------------+------+-----+-------+
| 1 | Wednesday, June 6, 2018 | USD TO EUR | USD | EUR | 0.88 |
| 2 | Thursday, June 7, 2018 | USD TO EUR | USD | EUR | 0.89 |
| 3 | Friday, June 8, 2018 | USD TO EUR | USD | GBP | 1.40 |
| 4 | Saturday, June 9, 2018 | USD TO EUR | USD | EUR | 0.86 |
----+-------------------------+------------+------+-----+-------+
我想创建一个新列,使用与交易日期相同的汇率将表1中的EUR列转换为USD。
答案 0 :(得分:3)
加入:
SELECT
t.*,
t.eur / rates.rate AS priceindollars
FROM t
INNER JOIN rates
ON rates.Date = t.Date AND rates.From = 'USD' AND rates.To = 'EUR'
假设费率表中有一个日期与第一个表中的日期匹配。
答案 1 :(得分:0)
您绝对可以使用子选择来执行此操作。您可能还可以使用“交叉申请”来做到这一点。