內連線 左連線 左外連線 右連線的區別

2021-06-19 16:49:37 字數 879 閱讀 8594

一:測試例子

存在如下兩張表:年級與班級,表內容如下

班級表

二:內連線與自然連線

1:自然連線

對於select * from gradeclass gc where gc.grade_id in (select id from grade),其結果如下圖

其查詢是把符合條件中的班級表內容全部查詢出來

而對於下面的語句select * from gradeclass gc inner join grade g on gc.grade_id=g.id,在這裡inner可以省略。其結果是除了把符合條件的gradeclass表中的內容查詢出來外,還把grade表中的所有欄位也一併查詢出來,其結果如下

二:左連線(實際上就是左外連線)

其語句如下:select * from grade g rigth outer join gradeclass g on g.grade_id=gc.id(這裡的outer可以省略),它是除了把左邊表的所有資料都查詢出來,不管是否滿足條件,並且合併是右表的所有字段,其結果如下

左連線 左外連線 右外連線

在之前,我對mssql中的內連線和外連線所得出的資料集不是很清楚。這幾天重新溫習了一下sql的書本,現在的思路應該是很清楚了,現在把自己的理解發出來給大家溫習下。希望和我一樣對sql的連線語句不太理解的朋友能夠有所幫助。發這麼菜的教程,各位大大們別笑話偶了,呵 d 有兩個表a和表b。表a結構如下 a...

內連線,左外連線,右外連線,全連線

1.內連線我們通常用的連線,表表連線只顯示交集資料 2.外連線分左外連線 table1 left outer join on table2 和右外連線table1 right outer join on table2 和全連線 table1 full outer join on table2 2.1...

SQL 內連線,外連線(左外連線 右外連線)

參考整理筆記 關鍵字 inner join on 語句 select from a table a inner join b table bon a.a id b.b id 執行結果 說明 組合兩個表中的記錄,返回關聯字段相符的記錄,也就是返回兩個表的交集 陰影 部分。關鍵字 left join o...