作者west1996 (焦了六年变脆了)
看板Statistics
标题Re: [程式] 不好意思,想请问有关sas分群加总的问쌠…
时间Tue May 3 00:30:27 2011
※ 引述《joyce618 (joy)》之铭言:
: 非常谢谢大人的回答
: 因为不知道要怎麽直接修改原来发的文章
: 所以用回文来表示谢意
: 另外,小妹根据大人提供的写法另外做一些更动
: 在这里也跟大人分享一下
: 因为有两个年度,再加上2011年第一季所需的资料只有到二月底
: 所以小妹将宣告if的部份修改为
: IF yr='2010' THEN if month='4' or month='5' or month='6' THEN month='6';
: ELSE IF month='7' or month='8' or month='9' THEN month='9';
: ELSE IF month='10' or month='11' or month='12' THEN month='12';
: ELSE DELETE;
: IF yr='2011' THEN IF month='1' or month='2' THEN month='2';
: ELSE DELETE;
: RUN;
: 其中,小妹发现不知道为何,如果只写if month='4' or month='5' THEN month='6';
: 在进行SQL加总时并未将本来MONTH=6的数字加入,故小妹另外在if後面多宣告一次
本来的code不会有这个问题,应该是跟你有加else delete这一句的关系,因为如果if
後面没有month='6'的话,这一句会把原本month='6'的资料删除掉....
: PROC SQL;
: CREATE table new as
: SELECT distinct code,name,yr,month,sum(AR) as TOTALAR from d
: GROUP BY code,name,yr,month;
: QUIT;
: 在进行SQL时,由於按照大人原先的写法,好像同公司同月分的资料不会自动合并成一笔
: 故小妹参考distinct的语法,另外修正为以上写法
: 但是由於小妹没有学过SQL
: 所以也不确定这样写对不对(但是输出的资料还有LOG视窗内没有发现什麽问题啦...)
: 还烦请大人指教
: 非常感谢大人的帮忙^^
我前面的code太偷懒所以多加了date进去,所以会变成每一季都有30或31笔资料,不过後
面算的加总应该还是对的吧XD
照你这样写答案应该就是你要的没错
btw 「大人」感觉很怪....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.243.0.65
1F:推 lsshno1:XD 05/03 01:49
2F:推 goshfju:大人XD 05/03 02:13
3F:推 joyce618:谢谢大神讲解^^ 05/03 18:00
4F:→ west1996:orz 05/03 18:17
5F:推 wlsherica:大人XD 忍不住想推 05/03 19:56