複製鏈接
請複製以下鏈接發送給好友

自然連接

鎖定
自然連接(Natural join)是一種特殊的等值連接,它要求兩個關係中進行比較的分量必須是相同的屬性組,並且在結果中把重複的屬性列去掉。而等值連接並不去掉重複的屬性列。 [1] 
R⋈S|
定義:自然連接是關係R和S在所有公共屬性(common attribute)上的等接(Equijoin)。但在得到的結果中公共屬性只保留一次,其餘刪除。 [2] 
R⋈S ≡ ΠR u S( δ predicate(R x S))
中文名
自然連接
外文名
Nature join
應用領域
數據庫

目錄

  1. 1 定義
  2. 簡述
  3. 區別
  4. 外連接
  5. 2 示例

自然連接定義

自然連接簡述

在連接運算當中,一種最常用的連接是自然連接。如果關係R與S具有相同的屬性組B,且該屬性組的值相等時的連接稱為自然連接,結果關係的屬性集合為R的屬性並上S減去屬性B的屬性集合。
R和S自然連接可記作:R⋈S={t r⌒ts |tr∈R∧ts∈S∧tr[B]=ts[B]} [3] 
自然連接也可看作是在廣義笛卡爾積R×S中選出同名屬性上符合相等條件元組,再進行投影,去掉重複的同名屬性,組成新的關係。

自然連接區別

1. 等值連接中不要求屬性值完全相同,而自然連接要求兩個關係中進行比較的必須是相同的屬性組(屬性名可以不同),即要求必須有相同的值域
2. 等值連接不將重複屬性去掉,而自然連接去掉重複屬性,也可以説,自然連接是去掉重複列的等值連接。

自然連接外連接

如果把捨棄的元組也保存在結果關係中,而在其他屬性上空值,那麼這種連接就叫外連接。如果只把左邊關係R要捨棄的元組保留就叫左外連接,如果只把右邊關係S中要捨棄的元組保留右外連接。

自然連接示例

現有a和b兩表分別為關係R和S關係。
(a)關係R
A
B
C
a1
b1
5
a1
b1
6
a2
b2
8
a2
b2
12
(b)關係S
B
D
b1
3
b2
7
b3
10
b3
2
b4
5
下表為自然連接計算的結果關係R⋈S
R⋈S
A
B
C
D
a1
b1
5
3
a1
b1
6
3
a2
b2
8
7
a2
b2
12
7
參考資料
  • 1.    王珊 薩師煊.數據庫系統概論(第5版):高等教育出版社,2014:54
  • 2.    Thomas M.Connolly,Carolyn E.Begg.Database Systems: A Practical Approach to Design, Implementation, and Manage:Person Press,2016
  • 3.    周屹 李豔娟.數據庫原理及開發應用(第二版):清華大學出版社,2013:56-57