鏈接Oralce數據庫
創新互聯建站長期為1000+客戶提供的網站建設服務,團隊從業經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態環境。為嵐縣企業提供專業的成都做網站、成都網站制作,嵐縣網站改版等技術服務。擁有10年豐富建站經驗和眾多成功案例,為您定制開發。
參數說明:
libname (在SaS映射的數據庫名) path (Oracle數據庫SID)
schema (Oralce數據庫名一般為數據庫一個用戶)
oracle user (oracle數據庫登陸用戶名) password (oracle數據庫登陸密碼)
注意:登陸Oracle數據庫的帳號密碼必須有權限登陸指定的數據庫
*******************************************************************/
/* 鏈接 DataBaseName 數據庫(SID:orcl) */
libname DataBaseName oracle user=MyUserName password=MyPassWord path='orcl' schema=DataBaseName; /
在使用sas進行行轉列的字符串合并時,發現sas中并沒有合適的方法,而oracle在10g之后包含了WMSYS.WM_CONCAT函數,可以輕松的解決這類問題:
select t.rank, t.Name from t_menu_item t;
10 CLARK
10 KING
10 MILLER
20 ADAMS
20 FORD
20 JONES
20 SCOTT
20 SMITH
30 ALLEN
30 BLAKE
30 JAMES
30 MARTIN
30 TURNER
30 WARD
--------------------------------
我們通過 10g 所提供的 WMSYS.WM_CONCAT 函數即可以完成 行轉列的效果
select t.rank, WMSYS.WM_CONCAT(t.Name) TIME From t_menu_item t GROUP BY t.rank;
DEPTNO ENAME
------ ----------
10 CLARK, KING, MILLER
20 ADAMS, FORD, JONES, SCOTT, SMITH
30 ALLEN, BLAKE, JAMES, MARTIN, TURNER, WARD
例子如下:
SQL create table idtable (id number,name varchar2(30));
Table created
SQL insert into idtable values(10,'ab');
1 row inserted
SQL insert into idtable values(10,'bc');
1 row inserted
SQL insert into idtable values(10,'cd');
1 row inserted
SQL insert into idtable values(20,'hi');
1 row inserted
SQL insert into idtable values(20,'ij');
1 row inserted
SQL insert into idtable values(20,'mn');
1 row inserted
SQL select * from idtable;
ID NAME
---------- ------------------------------
10 ab
10 bc
10 cd
20 hi
20 ij
20 mn
6 rows selected
SQL select id,wmsys.wm_concat(name) name from idtable
2 group by id;
ID NAME
---------- --------------------------------------------------------------------------------
10 ab,bc,cd
20 hi,ij,mn
SQL select id,wmsys.wm_concat(name) over (order by id) name from idtable;
ID NAME
---------- --------------------------------------------------------------------------------
10 ab,bc,cd
10 ab,bc,cd
10 ab,bc,cd
20 ab,bc,cd,hi,ij,mn
20 ab,bc,cd,hi,ij,mn
20 ab,bc,cd,hi,ij,mn
6 rows selected
SQL select id,wmsys.wm_concat(name) over (order by id,name) name from idtable;
ID NAME
---------- --------------------------------------------------------------------------------
10 ab
10 ab,bc
10 ab,bc,cd
20 ab,bc,cd,hi
20 ab,bc,cd,hi,ij
20 ab,bc,cd,hi,ij,mn
6 rows selected
個人覺得這個用法比較有趣.
SQL select id,wmsys.wm_concat(name) over (partition by id) name from idtable;
ID NAME
---------- --------------------------------------------------------------------------------
10 ab,bc,cd
10 ab,bc,cd
10 ab,bc,cd
20 hi,ij,mn
20 hi,ij,mn
20 hi,ij,mn
6 rows selected
SQL select id,wmsys.wm_concat(name) over (partition by id,name) name from idtable;
ID NAME
當前的SAS系統提供了許多數據庫管理的功能,包括數據庫視圖和一套擴展的ANSI SQL語言。SAS包括了幾個用來獲取關系型數據庫的過程。我們將探討如何基于SAS系統平臺來實現網絡工作站與遠程Oracle服務器的連接。
雖然這里討論的是如何使用SAS/Access和SAS/SQL來連接Oracle數據庫的,但原理同樣適用于DB2、Sybase、Informix、ODBC、OLE DB、SQL Server以及Teradata等客戶端/服務器系統。SAS/Access是基于客戶端/服務器系統而開發的,這就需要獨立的數據庫引擎來為本地應用提供數據服務。轉載,僅供參考。
1、將SPSS數據另存為sas格式
2、在SAS中將數據導入oracle中
libname wsw oracle user='wsw' password='wsw' path='phis5s';
run;
將sas中的數據表創建在ORACLE數據庫中
proc sql;
create table wsw.wswa as
select * from wswa;
quit;
run;
文章名稱:sas怎么連oracle,sas連接器
分享網址:http://m.kartarina.com/article48/hegsep.html
成都網站建設公司_創新互聯,為您提供品牌網站設計、品牌網站制作、域名注冊、Google、外貿網站建設、定制網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯