7

私は次のような質問に出くわしました

学生に関連する次の関係スキーマを考えてみましょう

  • データベース: 学生 ( rollno、名前、住所)
  • 登録(ロール番号、コース番号、コース名)

ここで、主キーには下線が引かれています。Student テーブルと Enroll テーブルのタプル数は、それぞれ 120 と 8 です。(Student * Enroll) に存在できるタプルの最大数と最小数はいくつですか? ここで、「*」は自然結合を示します。

私はこれこのようなインターネットでいくつかの解決策を見てきました

私の理解のとおりです。(rollnum,course) ごとに Student にロール番号が存在する必要があるため、最大タプルは 8 で、最小タプルも 8 にする必要があります。この件に関してご協力いただける方

4

4 に答える 4

7

Natural Join とは何かを正確に理解していただけたと思います。ここで確認できます。

テーブル R と S に共通の属性が含まれ、両方のテーブルの各タプルのその属性の値が同じである場合、自然結合はタプルのすべての組み合わせを返すため、n*m タプルになります。

次の 2 つの表を検討してください

表 R (属性 A および C を含む)

あ | C
----+----
 1 | 2
 3 | 2

表 S (属性 B および C を含む)

ビ | C
----+----
 4 | 2
 5 | 2
 6 | 2

自然結合の結果 R * S (2 つのテーブルの属性 C のドメインが同じ場合)

あ | ビ | C
---+-----+----
 1 | 4 | 2
 1 | 5 | 2
 1 | 6 | 2
 3 | 4 | 2
 3 | 5 | 2
 3 | 6 | 2  

R と S の両方に、すべてのタプルで値が 2 である属性 C が含まれていることがわかります。テーブル R には 2 つのタプルが含まれ、テーブル S には 3 つのタプルが含まれ、結果テーブルには 2*3=6 タプルが含まれます。

さらに、自然結合の実行中に、2 つのリレーション間に共通の属性がない場合、自然結合はデカルト積として動作します。その場合、タプルの最大数として明らかに mxn があります。

次の 2 つの表を検討してください

表 R (属性 A および B を含む)

あ | B
----+----
 1 | 2
 3 | 2

表 S (属性 C および D を含む)

シー | D
----+----
 4 | 2
 5 | 2

自然結合の結果 R * S

あ | ビ | シー | D
---+----+----+----
 1 | 2 | 4 | 2
 1 | 2 | 5 | 2
 3 | 2 | 4 | 2
 3 | 2 | 5 | 2

お役に立てれば。

于 2016-01-09T10:46:56.730 に答える
-1

R と S の自然な結合に現れる可能性のあるタプルの最大数について質問している場合、両方のタプルのデカルト積です

于 2017-01-09T13:52:04.940 に答える