楼主: wangyixp
1011 3

求助 [推广有奖]

  • 0关注
  • 0粉丝

小学生

57%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
108 点
帖子
9
精华
0
在线时间
0 小时
注册时间
2013-5-30
最后登录
2013-6-1

楼主
wangyixp 发表于 2013-5-31 21:39:20 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
原表如下所示:
cust_no product_no pro_amount
1 2 200
1 1 300
1 3 200
2 2 300
2 3 200
2 1 100
3 1 200
3 2 100
4 1 600
5 2 500
1、实现如下所示的查询功能:
cust_no pro_amount1 pro_amount2 pro_amount3
1 300 200 200
2 100 300 200
3 200 100 .
4 600 .   .
5 .   500 .
不知道从何下手开始做,哎~~求帮助
二维码

扫码加我 拉你入群

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

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

关键词:Product amount produc prod AMO

沙发
yongyitian 发表于 2013-5-31 21:58:23
/* sort the data then transpose */

data test;
input cust_no product_no pro_amount;
datalines;
1 2 200
1 1 300
1 3 200
2 2 300
2 3 200
2 1 100
3 1 200
3 2 100
4 1 600
5 2 500
;
run;

proc sort data=test; by cust_no product_no; run;

proc transpose data=test out=test_trans(drop=_name_)  prefix=pro_amount;
    by cust_no;
    id product_no;  
    var pro_amount;
run;

藤椅
boe 发表于 2013-6-2 21:51:08
仅供参考:
  1. proc sort data=test;by cust_no product_no; run;
  2. data need;
  3.    set test;
  4.    by cust_no product_no;
  5.    array w[*] pro_amount1-pro_amount3;
  6.    retain pro_amount1-pro_amount3;
  7.    if first.cust_no then call missing(of pro_amount1-pro_amount3);
  8.    w[product_no]=pro_amount;
  9.    if last.cust_no then output;
  10.    drop product_no pro_amount;
  11. run;
复制代码

Gorgeous girl , I love !

板凳
︶ㄣ屎狒狒瓜°_ 发表于 2013-6-3 15:38:17
proc transpose function can solve your problem.
Learn more, deserve more.

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 10:41