這篇文章給大家分享的是有關(guān)表鏈接proc sql的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
網(wǎng)站設(shè)計制作、成都網(wǎng)站制作服務(wù)團隊是一支充滿著熱情的團隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標準與要求,同時竭誠為客戶提供服務(wù)是我們的理念。創(chuàng)新互聯(lián)建站把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細琢,追求一名工匠心中的細致,我們更用心!
/*21.1.1 簡單連接*/ proc sql; select * from resdat.china, resdat.usa; quit /*21.1.3 內(nèi)部連接*/ proc sql; select * from resdat.china, resdat.usa where china.level=usa.level; quit; /*21.1.3.1 使用表的別名*/ proc sql; select * from resdat.china as a, resdat.usa as b where a.level=b.level; quit; /*21.1.3.2 使用別名進行表的自我連接*/ proc sql; select * from resdat.china a, resdat.china b where a.level<b.level; quit; /*21.1.3.3 設(shè)定連接輸出的排列順序*/ proc sql; select * from resdat.china a, resdat.china b where a.level<b.level order by a.level desc; quit; /*21.1.6 缺失值對連接的影響*/ /* 程序一 */ proc sql; title ' Table A and B Joined'; select a.obs 'A-OBS', a.stkcd, b.obs 'B-OBS', b.stkcd from a, b where a.stkcd= b.stkcd; /* 程序二 */ proc sql; title ' Table Three and Four Joined'; select Three.Obs '3-OBS', Three.Fdcd, Four.Obs '4-OBS', Four.Fdcd from Three, Four where Three.fdcd= Four.fdcd and three.fdcd is not missing; /* 21.1.7 從多于兩個表的數(shù)據(jù)集中查詢數(shù)據(jù) */ proc sql outobs=3; select a.stkcd,b.lstknm,c.clpr from resdat.sampstk a,resdat.lstkinfo b,resdat.qttndist c where a.stkcd=b.stkcd and b.stkcd=c.stkcd and a.stkcd=c.stkcd; quit; /* 21.1.8.1 左外部連接 */ proc sql; select * from resdat.china a left join resdat.usa b on a.level=b.level; quit; /* 21.1.8.2 右外部連接 */ proc sql; select * from resdat.china a right join resdat.usa b on a.level=b.level; quit; /*21.1.8.3 完全外部連接*/ proc sql; select * from resdat.china a full join resdat.usa b on a.level=b.level; quit; /*21.1.9.1 與簡單連接功能相同的Cross連接 */ proc sql; select * from resdat.china cross join resdat.usa; quit; /*21.1.9.2 包含所有行的Union連接 */ proc sql; select * from resdat.china union join resdat.usa; quit; /*21.1.9.3使用自動匹配連接的Natural連接*/ proc sql; select * from resdat.china union join resdat.usa; quit; /* 21.1.10 連接使用COALESCE函數(shù) */ Proc sql; select a.level,a.china,coalesce(b.level,a.level),coalesce(b.usa,a.china)as usa from resdat.china a full join resdat.usa b on a.level=b.level; quit; /* 21.2.1 所有行匹配無重復(fù)值的情況 */ data merge1; merge a b; by code; run; proc print data=merge1 noobs; title 'Table MERGE1'; run; proc sql; title 'Table MERGE1'; select a.code, a.manager, b.Assitant from a, b where a.code=b.code; quit; /* 21.2.2 部分行匹配無重復(fù)值的情況 */ /* 程序一 */ data merge2; merge a b; by code; run; proc print data=merge2 noobs; title 'Table MERGE2'; run; /* 程序二*/ proc sql; select code,a.manager,b.assistant from a natural full join b; quit; /* 21.2.3有重復(fù)值的情況 */ /*程序一*/ data merge3; merge a b; by code; run; proc print data=merge3 noobs; title 'Table MERGE3'; run; /* 程序二*/ Proc sql; Title 'Table Merge3'; Select a.code, a.manager, b.assistant From a full join b On a.code=b.code; quit; /* 21.3.1 產(chǎn)生單個值的子查詢 */ Proc sql; Title 'Which Manager has the same code as Assistant Chen'; Select * From a Where code eq (select code from b where assistant='Chen'); Quit; /* 21.3.2 產(chǎn)生多個值的子查詢 */ Proc sql; select stkcd,lstknm,lstdt from resdat.lstkinfo where stkcd in (select stkcd from resdat.sampstk); quit; /* 21.3.3 混合子查詢 */ proc sql; select stkcd,yrret from resdat.yrret a where (select stktype from resdat.lstkinfo b where a.stkcd=b.stkcd)='A' and '1jan2005'd<=date<='31dec2005'd; quit; /* 21.3.5 子查詢的多重嵌套 */ Proc sql; select stkcd,yrret from resdat.yrret a where stkcd in (select stkcd from resdat.sampstk b where stkcd in(select stkcd from resdat.lstkinfo c where c.stktype='A')) and '1jan2005'd<=date<='31dec2005'd; quit; /*21.3.6 在JOIN連接中使用子查詢*/ proc sql; select a.id,b.id,sqrt((a.x-b.x)**2+(a.y-b.y)**2)as dist from point a,point b where a.id lt b.id and calculated dist=(select min(sqrt((c.x-d.x)**2+(c.y-d.y)**2)) from point c,point d where c.id lt d.id); quit; /*21.5.2 由多個查詢產(chǎn)生非重復(fù)觀測 (UNION算符)*/ /*程序一*/ proc sql; title 'A UNION B'; select * from A union select * from B; quit; /* 程序二 */ proc sql; title 'A UNION ALL B'; select * from A union all select * from B; quit; /*21.5.3 產(chǎn)生只屬于第一個查詢的觀測(EXCEPT算符)*/ /*程序一*/ proc sql; title 'A EXCEPT B'; select * from A except select * from B; quit; /*程序二*/ proc sql; title 'A EXCEPT ALL B'; select * from A except all select * from B; /*21.5.4 從多個查詢中產(chǎn)生公共部分 (INTERSECT算符)*/ proc sql; title 'A INTERSECT B'; select * from A intersect select * from B; /*21.5.5 直接連接查詢結(jié)果 (OUTER UNION算符)*/ /*程序一*/ proc sql; title 'A OUTER UNION B'; select * from A outer union select * from B; /*程序二*/ proc sql; title 'A OUTER UNION CORR B'; select * from A outer union corr select * from B; /* 21.5.6 特殊的查詢合并方式 */ proc sql; title 'A EXCLUSIVE UNION B'; (select * from A except select * from B) union (select * from B except select * from A);
感謝各位的閱讀!關(guān)于“表鏈接proc sql的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
本文題目:表鏈接procsql的示例分析
鏈接分享:http://www.rwnh.cn/article8/jjscip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、、建站公司、App設(shè)計、Google、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)