楼主: uest110
5391 5

如何存储sql查询结果到数据集中? [推广有奖]

  • 0关注
  • 0粉丝

已卖:13份资源

大专生

16%

还不是VIP/贵宾

-

威望
0
论坛币
494 个
通用积分
0.0750
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
476 点
帖子
32
精华
0
在线时间
18 小时
注册时间
2009-1-10
最后登录
2010-6-19

楼主
uest110 发表于 2009-4-28 17:48:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我用循环查询了work.lag数据集中z1,z2,...z10,共十个变量,并分别求和作为sum1,sum2,...sum10;
但是不知道如何存储这10个求和结果,即把它们放到一个数据集中。多谢高手指点!
%macro cov;

proc sql;
%do i=0 %to 10;
select sum(z&i) as sum&i from work.lag;
%end;
quit;

%mend;
%cov;
<script type="text/javascript"></script><script src="https://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script><script></script>
二维码

扫码加我 拉你入群

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

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

关键词:sql 数据集 proc sql Select Macro 数据 结果 查询 sql

回帖推荐

爱萌 发表于3楼  查看完整内容

%macro cov;proc sql;%do i=0 %to 10;select sum(z&i) as sum&i from work.lag;%end;quit;data a;set sum&i a;%mend;%cov;

psweather0129 发表于2楼  查看完整内容

就你寫的程式修該如下即可%macro cov;%do i=0 %to 10;proc sql ;create table sum as select sum(z&i) as sum&i from work.lag;quit;%if &i.=1 %then %do;data out;set sum;run;%end;%else %do;data out;  merge out sum;  run;%end;%end;%mend;還有更簡便的方法,不一定要用SQL用proc means會更快proc means data=lag noprint;  var z1-z10;  output out=out sum= /a ...

本帖被以下文库推荐

沙发
psweather0129 发表于 2009-4-28 23:48:00
就你寫的程式修該如下即可
%macro cov;
%do i=0 %to 10;
proc sql ;
create table sum as select sum(z&i) as sum&i
 from work.lag;quit;

%if &i.=1 %then %do;
data out;set sum;run;
%end;
%else %do;
data out;  
merge out sum;  run;
%end;

%end;
%mend;

還有更簡便的方法,不一定要用SQL用proc means會更快
proc means data=lag noprint; 
 var z1-z10;  
output out=out sum= /autoname;
run; 

[此贴子已经被作者于2009-4-28 23:53:17编辑过]

已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

藤椅
爱萌 发表于 2009-4-29 17:33:00

%macro cov;

proc sql;
%do i=0 %to 10;
select sum(z&i) as sum&i from work.lag;
%end;
quit;

data a;

set sum&i a;

%mend;
%cov;

已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

最恨对我说谎或欺骗我的人

板凳
pobel 在职认证  发表于 2009-4-29 18:09:00

%macro cov;

proc sql;

create table sum as

  select
%do i=0 %to 10;
    %if &i ne 10 %then sum(z&i) as sum&i ,

    %else sum(z&i) as sum&i 

%end;

from work.lag;
quit;

%mend;

[此贴子已经被作者于2009-4-29 18:09:48编辑过]

和谐拯救危机

报纸
firstknife 发表于 2009-5-11 10:04:00
飘过,学习中

地板
kittyforever 发表于 2013-1-17 13:16:39
pobel 发表于 2009-4-29 18:09
%macro cov;proc sql;create table sum as   select %do i=0 %to 10;    %if &i ne  ...
学习啦

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

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