我有两个表,数据和费率。在数据表中,我有以下信息: -
至于费率表,我有以下信息: -
最终输出应采用以下格式: -
条件: -
一个。如果Local Currency和Document Current相同,则ExRate必须等于1;
湾如果它们不相同,那么ExRate将基于Rate表中的Local Currency。
如何生成上述输出?
答案 0 :(得分:1)
您可以使用LEFT JOIN
和CASE
SELECT d.*,
CASE
WHEN d.DocumentCurrency = r.LocalCurrency then 1
ELSE r.ExRate
END AS ExRate
FROM Data d
LEFT JOIN Rate r on d.DocumentCurrency = r.DocumentCurrency
AND d.LocalCurrency = r.LocalCurrency