SQl中的左連接配接,右連接配接,内連接配接,全連接配接,自連接配接的了解。
轉自部落格園
Johnny.3-技術随筆 筆
按照自己的了解做個筆記,以下在Sql Server2005和Oracle92中都運作通過:
create table a(
aid varchar(2),
aname varchar(10),
bid varchar(2) );
create table b(
bid varchar(2),
bname varchar(10));
insert into a values('s1','sname1','c1');
insert into a values('s2','sname2','c2');
insert into a values('s3','sname3','c3');
insert into a values('s4','sname4','c4');
insert into a values('s5','sname5','c5');
insert into b values('c1','cname1');
insert into b values('c2','cname2');
insert into b values('c3','cname3');
insert into b values('c6','cname6');
insert into b values('c7','cname7');
--Iner Join和Join和, (如select * from a,b where a.id=b.id),這三個效果一樣.
select * from a , b where a.bid = b.bid;
select * from a join b on a.bid = b.bid;
select * from a inner join b on a.bid = b.bid;
--Left Join和Left Outer Join 左連接配接、左外連接配接,效果一樣。
select * from a left join b on a.bid = b.bid;
select * from a left outer join b on a.bid = b.bid;
--Right Join和Right Outer Join 右連接配接、右外連接配接,效果一樣。
select * from a right join b on a.bid = b.bid;
select * from a right outer join b on a.bid = b.bid;
--Full Join和Full Outer Join 全連接配接、全外連接配接,效果一樣。
select * from a full join b on a.bid = b.bid;
select * from a full outer join b on a.bid = b.bid;
--Cross Join,不帶where,即笛卡爾積。
select * from a Cross join b;
總結:隻有以上的的連接配接詞,像什麼Left Inner Join、Right Full Join之類的組合都沒有,想都别想!!
0 0 0 (請您對文章做出評價) »下一篇: -------------------該文摘自于匿名教程總結,希望對初學js的同學有幫助,因為它解決了我學習js的衆多迷惑。。。
try { GS_googleAddAdSenseService("ca-pub-4210569241504288"); GS_googleEnableAllServices(); } catch (e) { } try { GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_blogpost_body"); GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_commentbox_up"); GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_blogpost_bottom"); GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_blogpost_bottom1"); } catch (e) { } try { GA_googleFetchAds(); } catch (e) { } var blog_ad_has_shown = false;
posted on 2009-02-20 11:04 Johnny.3 閱讀(264) 評論(1) 編輯收藏 網摘