在此表中,Trans_Date列一直持续到2016年7月31日。
如何在一个循环下将Value列乘以Rate列(AUD的货币兑换,以及NZD,CAD,特定日期的currency_conv中显示的GBP)以显示每个Order_Number的值仅在AUD中?
“货币”列应仅以AUD表示。
答案 0 :(得分:0)
您是否要求每种货币的每日澳元兑换率并相应地乘以每个条目?
为此您可以尝试以下方法:
首先,创建一个新表:
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;