《SAS编程与数据挖掘商业案例》学习笔记之二
繼續之前的讀書筆記,廢話少說,直奔主題。
四.連接數據庫的方式
libname形式:
Oracle?鏈接:Libname??IBMSHCU oracle user=bi password=bi schema=educ;
DB2鏈接:libname hsdb db2 user=xxx password="xxx"??datasrc=datadb;
?
passthrough方式(通過connect語句簡歷sas與外界數據庫之間的?通信):
Proc sql ;
??connect to teradata(user=xxx??password=xxx??database=access_views??tdpid="xxx"?mode=teradata);
???create table sas_tb as select * from connection teradata
????(select * from test.tb1);
??disconnect from teradata;
Quit;
?
import方式(適用于txt、csv、excel、access等文件的導入)
libname IBMSHCU oracle user=bi password=test123 path=ibmshcu;
?
%let filepath=C:\Documents and Settings\Administrator\My Documents\01 work\01 project\cun;
%let filemonth=201202;
?
?
proc import datafile="&filepath.\副本存費贈費清單2月.xls"
??????out= newcharge_calllist_&filemonth.
??DBMS=EXCEL REPLACE;
?????SHEET="SQL Results$";
?????GETNAMES=yes;
?????MIXED=NO;
?????SCANTEXT=YES;
?????USEDATE=NO;
?????SCANTIME=YES;
run;
data??gcl_newcharge_calllist_&filemonth.;????????????????????????
set newcharge_calllist_&filemonth.;
rename?????_col0=device_number
???????????_col1=sellresult
???????_col2=sell_time
???_col3=seller_id
???;
run;
?
data??ibmshcu.gcl_newcharge_calllist_&filemonth.;
set gcl_newcharge_calllist_&filemonth.;
run;
?
除了以上代碼之外,還可以通過菜單的方式操作,通過file菜單下面有個import的菜單進行;
?
input方式(最復雜最不常用的方式)
?
另一種導入方式,不需要改列名:
libname IBMSHCU oracle user=bi password=test123 path=ibmshcu;
%let filepath=C:\Documents and Settings\Administrator\My Documents\01 work\01 project\cun;
%let filemonth=201112;
data??chongzhishiwu_&filemonth.;
length???order??8
?????????ACTIVITY_ID???$10.
?????????ACCT_MONTH????$6.
?????????ACCT_DATE?????$8.
?????????AREA_NO???????$6.
?????????AREA_NO_DESC??$20.
?????????INACTIVE_TIME $10.
?????????SUBS_OBJECT_UID $10.
?????????IS_3G_USER????$4.
?????????PAY_MODE??????$10.
?????????OPERATOR_NAME $10.
?????????CHANNEL_NAME??$50.
??????????????;
infile "&filepath.\充值送實物2011-12.TXT" dsd dlm='|' missover end=last firstobs=2;
do until(last);
input????order?
?????????ACTIVITY_ID???$
?????????ACCT_MONTH????$
?????????ACCT_DATE?????$
?????????AREA_NO???????$
?????????AREA_NO_DESC??$
?????????INACTIVE_TIME $
?????????SUBS_OBJECT_UID $
?????????IS_3G_USER????$
?????????PAY_MODE??????$
?????????OPERATOR_NAME $
?????????CHANNEL_NAME??$
???????;
output;
end;
drop order;
run;
總結
以上是生活随笔為你收集整理的《SAS编程与数据挖掘商业案例》学习笔记之二的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《SAS编程与数据挖掘商业案例》学习笔记
- 下一篇: 《SAS编程与数据挖掘商业案例》学习笔记