D1×D2 = { | (リンゴ, 30, 1), (リンゴ, 30, 3), (リンゴ, 30, 5), | |
(リンゴ, 80, 1), (リンゴ, 80, 3), (リンゴ, 80, 5), | ||
(リンゴ, 100, 1), (リンゴ, 100, 3), (リンゴ, 100, 5), | ||
(ミカン, 30, 1), (ミカン, 30, 3), (ミカン, 30, 5), | ||
(ミカン, 80, 1), (ミカン, 80, 3), (ミカン, 80, 5), | ||
(ミカン, 100, 1), (ミカン, 100, 3), (ミカン, 100, 5), | ||
(キウイ, 30, 1), (キウイ, 30, 3), (キウイ, 30, 5), | ||
(キウイ, 80, 1), (キウイ, 80, 3), (キウイ, 80, 5), | ||
(キウイ, 100, 1), (キウイ, 100, 3), (キウイ, 100, 5) | } |
|
|
|
例えば、表4および表5に示すリレーション 「商店Aの商品」と「商店Bの商品」は和両立である。
- m = n
- ∀i (1≦i ≦n) について、 dom(Ai ) = dom(Bi )
|
|
|
|
|
|
|
|
R [Ai 1, Ai 2, ...,Ai k ] | ||
= { | u | u ∈ dom{Ai 1)× dom{Ai 2)×...× dom{Ai k )∧ | |
(∃t ∈R , t [Ai 1] = u [Ai 1] ∧ t [Ai 2] = u [Ai 2] ∧...∧ t [Ai k ] = u [Ai k ] ) | } |
|
|
|
|
θ結合(R [Ai θ Bj ]S )
リレーションR (A1, A2, ..., Am )および リレーションS (B1, B2, ..., Bn )の θ結合 R [Ai θBj ]S は 以下のように定義される。
R [Ai θBj ]S = { (t , u ) | t ∈R ∧ t ∈R ∧ t [Ai ] θ u [Bj ] }
= (R ×S ) [R . Ai θ S . Bj ]
すなわち、θ結合は、リレーションR とS の直積として得られる リレーションに選択を行う演算である。
例えば、表9および表10に示すリレーションに対し、 県が一致するものに関するθ結合を行った結果は 表15のようになる。
表9: 地域 地方 県 東北 青森 関東 栃木 四国 愛媛
表10: 特産 県 果物 青森 リンゴ 愛媛 ミカン
表15: 地域[地域 . 県 = 特産 . 県]特産
地域 . 地方 地域 . 県 特産 . 県 特産 . 果物 東北 青森 青森 リンゴ 四国 愛媛 愛媛 ミカン
また、複数の条件θ1, θ2, ..., θkに 基づき結合する場合、以下のように記述する。
R [Ai 1 θ1 Bj 1 , Ai 2 θ2 Bj 2 , ..., Ai k θk Bj k ]S
自然結合(R *S )
次に、リレーションR (A1, A2, ..., Am )および リレーションS (B1, B2, ..., Bn )の 共通の属性を{C1, C2, ..., Ck } = {A1, A2, ..., Am }∧ {B1, B2, ..., Bn }とし、 また、 {D1, D2, ..., Dn - k } = {B1, B2, ..., Bn } - {C1, C2, ..., Ck } するとき、R とS の自然結合R *S は 以下のように定義される。
R *S =((R ×S ) [A.C1 = B.C1, ..., A.Ck = B.Ck ] ) [A1, ..., Am , D1, ..., Dn-k ]
例えば、表9と表10に示されるリレーションの自然結合地域*特産は、 表16のようになる。
表16: 地域*特産
地方 県 果物 東北 青森 リンゴ 四国 愛媛 ミカン
R (A 1, A 2, ..., A n-m , B 1, B 2, ..., B m ) |
S (B 1, B 2, ..., B m ) |
|
|
|
|
|
R ÷S = |
R [A 1, A 2, ..., An-m ] - ( ( R [A 1, A 2, ..., An-m ] ×S ) -R ) [A 1, A 2, ..., An-m ] |