在此表中,Trans_Date 列一直持续到 2016 年 7 月 31 日。
如何在循环下将 Value 列与 Rate 列相乘(在特定日期的 currency_conv 中看到的 AUD 的货币兑换为 NZD、CAD、GBP)以仅以 AUD 显示每个 Order_Number 的值?
货币列只能以澳元表示。
在此表中,Trans_Date 列一直持续到 2016 年 7 月 31 日。
如何在循环下将 Value 列与 Rate 列相乘(在特定日期的 currency_conv 中看到的 AUD 的货币兑换为 NZD、CAD、GBP)以仅以 AUD 显示每个 Order_Number 的值?
货币列只能以澳元表示。
您是否要求取每种货币每天的澳元兑换率并相应地乘以每个条目?
为此,您可以尝试以下操作:
首先,创建一个新表:
proc sql noprint;
create table rates as
select * from table
where Currency = 'AUD'
order by Trans_date;
quit;
data rates;
set rates;
by Trans_date;
output;
if last.Trans_date then do;
currency_conv = 'AUD';
rate = 1.;
output;
end;
run;
现在加入表格:
proc sql noprint;
create table as newTable
select a.*,a.value*b.rate as newValue
from table as a
left join (select * from rates) as b
on a.Trans_date = b.Trans_date
and a.currency = b.currency_conv;
quit;