全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3566 1
2016-11-08
%MACRO sum;

%let i=1,2,3;
%input i=%sysfunc(putn(&i,DATE7.));
proc sql;
create table saslib.S as
        select sum(oppr),sum(clpr)
from saslib.c
where '01/&i/1995'd<=date<='31/&i/1995'd;
quit;
%mend sum;
%sum;

我想设置一个日期的宏变量i
然后求和

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-11-11 10:00:44
%let start_date=19870101;
%let end_date=20160101;

data _null_;
        call symputx("start",put(input("&start_date.",yymmdd8.),date9.));
        call symputx("end",put(input("&end_date.",yymmdd8.),date9.));
run;

%put &start. &end.;

宏变量&start和&end分别对应01JAN1987 和01JAN2016;
另外,请用双引号来引用宏变量的值
where “start.”d<=date<="end."d
用单引号的话,没有宏变量的值,还是字符本身 。。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群