我对货币转换逻辑有疑问。目前,我们返回一个有很多货币字段的结果集。现在,要求说用户应该可以选择输出货币格式
例如:
Account name | Actual Amount | Estimated Amount | Target Amount XYZ | $ 2000 | $ 456.78 | $ 890.45 ABC | SD 2000 | SD 456.78 | SD 890.45
如果用户现在选择Yen作为输出格式,则结果集应为
Account name | Actual Amount | Estimated Amount | Target Amount XYZ | ¥ 2233 | ¥ 42356.78 | ¥ 82390.45 ABC | ¥ 21213000 | ¥ 41156.78 | ¥ 82390.45
汇率可用,我知道我们可以在select语句中调用函数来转换货币列。但是,对每条记录进行函数调用会增加执行时间。
是否有任何其他逻辑可用于改善执行时间。
答案 0 :(得分:0)
当您使用函数进行转换时,您必须知道每个记录都将执行该函数。因此,当仅查看执行函数的开销时,您将拥有与记录一样多的执行次数。
您可以更好地制作转换表,将转化率放入其中,然后加入该表。确保您在转化率表和原始表中都有一个包含货币的列,您就可以开始使用了。在select语句中输出公式,例如rate * Actual Amount。