Relational-Algebra

最小和最大元組數

  • January 5, 2021

考慮關係 R 和 S ,其中 R 有 m 個元組,S 有 n 個元組。m<=n 。在以下每種情況下,元組的最小和最大數量是多少(假設沒有提到關鍵約束)

  1. R 聯合 S
  2. R 交叉點 S
  3. RS
  4. SR
  5. R 自然加入 S
  6. R 左外連接 S
  7. R/S

我的工作

  1. RUNION S

max : n+m (聯合我們添加兩個關係中的所有元組)

min: 0 (取 m=n=null )

  1. R 交叉點 S

max : m ( m < n 兩個關係都包含相同的鍵,那麼我們可能會得到最大的 m 個鍵)

min: 0(如果兩個關係中都沒有公共鍵,則取 m=n=null)

  1. R - S

max : m (如果它們是不相交的,那麼在 RS 中我們將得到 R 的所有元組)

min: 0(如果 R 中的所有元組也存在於 S 中)

  1. SR

最大值:n(如上所述)

min: 0(如上所述)

  1. R 自然連接 S

max : n*m (如果沒有匹配的鍵約束自然連接將產生笛卡爾積)

min: m ( m < n 當考慮到關鍵約束時)

  1. R 左外連接 S

max : m (即使不匹配也會輸出左表中的所有內容)

min: 0(當 m=0 時)

  1. R/S

最大值:m(當 n=0 時)

min:我無法下結論

是的,您的答案大部分是正確的,除了一些錯誤:

1.R UNION S

  • max : n+m (聯合我們將兩個關係中的所有元組相加)

正確,當 R 和 S 沒有公共元組時。

  • min: 0 (取 m=n=null )

**錯誤,**最小值是n(m 和 n 兩個尺寸中最大的一個)。當 R 的所有元組也存在於 S 中時。

並且 m 和 n 不能為空,它們是關係的大小,它們是數字(整數)。

2.R INTERSECTION S

  • 最大:m(m&lt;n兩個關係包含相同的鍵,那麼我們可能會得到最大 m 個鍵)

正確但推理是錯誤的。您比較兩個關係的元組,而不是鍵。

  • min: 0(如果兩個關係中都沒有公共鍵,則取 m=n=null)

正確但推理錯誤。結果可能為 0,因為這兩個關係可能沒有共同的元組)。

3.R - S

  • 最大值:m(如果它們不相交,那麼在 RS 中我們將得到 R 的所有元組)

正確

  • min: 0(如果 R 中的所有元組也存在於 S 中)

正確

4.S - R

  • 最大值:n(如上所述)

正確

  • min: 0 (如上所述)

**錯誤,**最小值為n - m.

5.R natural join S

  • max : n*m (如果沒有匹配的鍵約束自然連接將產生笛卡爾積)

正確

  • min: m (m < n 當考慮到關鍵約束時)

**錯誤,**最小值是0。您可以輕鬆找到與案例 2 ( INTERSECTION) 相同的範例。

6.R LEFT OUTER JOIN S

  • max : m (即使不匹配也會輸出左表中的所有內容)

**錯誤,**最大值為m * n,與自然連接相同。或者只是採取ON TRUE

  • min: 0 (當 m=0 時)

錯誤,最小值為m。範例可以與NATURAL上面的 join 相同(或者只是 take ON FALSE),但它不能給出 lees 比R(連接中的左關係)中的元組數。

7.R / S

  • 最大值:m(當 n=0 時)

正確,但不必為 n=0 或 m=0。你可以找到另一個例子。

  • min:我無法下結論

**最小值是0**考慮到關係除法類似於整數除法。3 / 7例如給出0整數除法。嘗試將其轉換為關係除法。

引用自:https://dba.stackexchange.com/questions/160241