我正在尝试在访问中运行一个执行两阶段货币转换的查询。 它采用交易货币中的汇率表中的汇率,然后采用该地区的汇率。
有没有办法在一个查询中执行此操作。我尝试过以下但是语法错误。
UPDATE REPORT
SET REPORT.[Conversion Rate] =
(
(
Exchange_Rates.Rate
Where
Exchange_Rates.code = REPORT.[Transaction Currency Code]
)
/
(
Exchange_Rates.Rate
Where
Exchange_Rates.code = REPORT.[Regional Currency Code]
)
)
答案 0 :(得分:0)
您可以使用访问UPDATE JOIN
语法将汇率表加入报表:
UPDATE (Report
INNER JOIN Exchange_Rates tr
ON tr.code = Report.[Transaction Currency Code])
INNER JOIN Exchange_rates reg
ON reg.code = report.[Regional Currency Code]
SET [Conversion Rate] = tr.Rate / reg.Rate;
N.B。您需要加入两次以获得两种汇率
另一个选择是使用DLOOKUP功能:
UPDATE REPORT
SET [Conversion Rate] = Dlookup("Rate", "Exchange_Rate", "Code = " & Report.[Transaction Currency Code])
/
Dlookup("Rate", "Exchange_Rate", "Code = " & Report.[Regional Currency Code])