oracle中的內串連和外串連區別

來源:互聯網
上載者:User

標籤:

表t_user1,t_user2,t_user3,各有id,name兩列 

id

name

1

10A

2

20A

 

id

name

1

10B

3

30B

 

id

name

1

10C

4

40C

串連分為兩種:內串連與外串連。

A.內串連

內串連,即最常見的等值串連,例:

SELECT * 
FROM t_user1,t_user2
WHERE t_user1.id = t_user2.id


結果

 

id

name

id

name

1

10A

1

10B

B.外串連

外串連分為左外串連,右外串連和全外串連。

1.  左外串連 left outer join 或者 left join

左外串連就是在等值串連的基礎上加上主表中的未匹配資料,例:

SELECT *
FROM t_user1 
LEFT OUTER JOIN  t_user2
ON t_user1.id = t_user2.id

Oracle 支援另一種寫法

SELECT * 
FROM t_user1 ,t_user2
WHERE t_user1.id=t_user2.id(+)

結果:

 

id

name

id

name

1

10A

1

10B

2

20A

   

三個表做左外串連

SELECT *
FROM t_user1
LEFT OUTER JOIN t_user2
ON t_user1.id=t_user2.id
LEFT OUTER JOIN t_user3
ON t_user1.id=t_user3.id

Oracle 支援的另外一種寫法

SELECT *
FROM t_user1,t_user2,t_user3
WHERE t_user1.id=t_user2.id(+)
AND t_user1.id=t_user3.id(+)

結果:

 

id

name

id

name

id

name

1

10A

1

10B

1

10C

2

20A

       

2. 右外串連 right outer join 或者 right join

右外串連是在等值串連的基礎上加上被串連表的不匹配資料

SELECT *
FROM t_user1
RIGHT OUTER JOIN t_user2
ON t_user1.id=t_user2.id

Oracle支援的另一種寫法

SELECT *
FROM t_user1,t_user2
WHERE t_user1.id(+)=t_user2.id

結果:

 

id

name

id

name

1

10A

1

10B

   

3

30B

3.全外串連 full outer join 或者 full join

全外串連是在等值串連的基礎上將左表和右表的未匹配資料都加上

SELECT * 
FROM t_user1
FULL OUTER JOIN t_user2
ON t_user1.id=t_user2.id

全外串連的等價寫法,對同一表先做左串連,然後右串連

SELECT  t_user1.*,t_user2.*
FROM t_user1
LEFT OUTER JOIN t_user2
ON t_user1.id = t_user2.id
UNION
SELECT  t_user1.*,t_user2.*
FROM t_user2
LEFT OUTER JOIN t_user1
ON t_user1.id = t_user2.id

結果:

 

 

id

name

id

name

1

10A

1

10B

2

20A

   
   

3

30B

 

就總結這麼多吧。後面遇到再接著寫。

oracle中的內串連和外串連區別

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.