楼主: fan1984
2239 5

请教一个proc sql 中用宏的问题,在线等\ [推广有奖]

  • 0关注
  • 0粉丝

大专生

33%

还不是VIP/贵宾

-

威望
0
论坛币
153 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
270 点
帖子
25
精华
0
在线时间
41 小时
注册时间
2005-9-11
最后登录
2019-1-7

楼主
fan1984 发表于 2010-3-23 13:56:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
程序是这样的:
data _null_;
set research.investment;
format invtime 8.0;
a='%roundcount(';
b=',';
c=')';
file "roundnumber.txt";
put a $ institution $ b $ invtime  c $;
run;
proc sql noprint;
create table round
(institution char(12),invtime num,round num);
%macro roundcount(institution,date);
select count(*) into :count
from research.investment
where institution="&institution" and invtime<&date;
insert into round(institution,invtime,round) values ("&institution",&date,&count);
%mend;
%include"roundnumber.txt";
quit;

能够运行,但在日志窗口出现了两行:
warning:没有解析符号引用B。
二维码

扫码加我 拉你入群

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

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

关键词:proc sql ROC sql 在线等 Institution 请教 在线 proc sql

沙发
soporaeternus 发表于 2010-3-23 14:29:10
运行了下没有warning啊
LZ这样做是不是为了避免笛卡尔积?
research.investment大的话,这样的效率也不高啊
Let them be hard, but never unjust

藤椅
fan1984 发表于 2010-3-23 14:40:03
说实话,什么叫笛卡尔积我都不知道,实在宏的运行中间出现warning,有四行,出现两次.
2# soporaeternus

板凳
soporaeternus 发表于 2010-3-23 14:51:08
除了MACRO调用有点乱(可能个人习惯问题),我看不出什么问题
Let them be hard, but never unjust

报纸
醉_清风 发表于 2010-3-23 15:22:23
进来学习了
从来不需要想起 永远也不会忘记

地板
horace_chen 发表于 2010-3-23 15:51:39
put a $ institution $ b $ invtime  c $;

institution会不会有一些特殊字符,比如institution="&b"

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 14:19