資料庫中內連線 外連線 全連線

2021-06-16 09:14:52 字數 1252 閱讀 2277

**:

內連線:把兩個表中資料對應的資料查出來 

外連線:以某個表為基礎把對應資料查出來(全連線是以多個表為基礎) 

student表 

no name 

1 a 

2 b 

3 c 

4 d 

grade表 

no grade 

1 90 

2 98 

3 95 

內連線 inner join(查詢條件中對應的資料,no4沒有資料不列出來) 

語法:select * from student inner join grade on student.no = grade.no 

結果 student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

左連線(左表中所有資料,右表中對應資料,即左邊一定有資料,右邊不一定有) 

語法:select * from student left join grade on student.no = grade.no 

結果: 

student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

4 d 

右連線(右表中所有資料,左表中對應資料,即右邊一定有,左邊不一定有) 

語法:select * from student right join grade on student.no = grade.no 

結果: 

student.no name grade.no grade 

1 a 1 90 

2 b 2 98 

3 c 3 95 

全外連線(表中資料=內連線+左邊缺失資料+右邊缺失資料)

語法:select * from student full join grade on student.no = grade.no 

結果: 

no name grade 

1 a 90 

2 b 98 

3 c 95 

4 d 

1 a 90 

2 b 98 

3 c 95 

交叉連線(沒有where字句時結果為笛卡爾積)

一般不用。

注:access 中不能直接使用full join ,需要使用union all 將左連線和右連線合併後才可以

資料庫的外連線 內連線 左外連線,全外連線

students表和advisors表 一 內連線 按照advistor id進行表的合併,合併後的資料只有兩個表中advistor id都有的值,對應的行 二 左外連線 按照advistor id進行的左外連線合併,保證表students中advistor id的每一列都在合併後的新錶中,對於ad...

資料庫外連線(左 右 全) 內連線

1sql指令碼 0表資料 1左外連線 應用 結果 2右外連線 應用 結果 3全外連線 測試sql 4內連線 測試sql 結果 1 sql指令碼 set foreign key checks 0 table structure for clazz drop table if exists clazz ...

資料庫 連線(自然連線 外連線 內連線)

1 自然連線 只考慮那些在兩個關係模式中都出現的屬性上取值相同的元組對natural join join.using select a1,a2,an from r1 natural join r2 natural join natural join rn where p select name1,c...