HOME»データベーススペシャリスト掲示板»関数従属性  部分集合

データベーススペシャリスト掲示板

掲示板検索:

[0154]関数従属性  部分集合

柴犬さん(No.1)
@関数従属性(反射律)がよくわかりません。

BがAの部分集合のとき
A→B(Aが決まるとBも決まる)はOK
B→AはNGとのことですがなぜでしょうか?

逆じゃないのではと思います。
例えば
A(001,002,003,004)
B(002,004)
のときは、Bが決まれば確実にAが決まりますが
Aが決まっても必ずしもBは決まらないと思います。



A
下記の問題でアが違う、エは正しいのはわかるのですが、イとウがなぜ違うのかわかりません。

関数従属に関する記述のうち、適切なものはどれか。ここで、A、B、Cはある関係の属性の集合とする。

(H25春DB午前II問2)

ア  BがAに関数従属し、CがAに関数従属すれば、CはBに関数従属する。
イ  BがAの部分集合であり、CがAに関数従属すれば、CはBに関数従属する。
ウ  BがAの部分集合であれば、AはBに関数従属する。
エ  BとCの和集合がAに関数従属すれば、BとCはそれぞれがAに関数従属する。
2021.01.10 18:37
関数従属さん(No.2)
@  関数従属性を考える際にはA,BにはDBの行や値ではなく、DBの列をイメージしてもらうとよいかと思います。
    BがAの部分集合の場合の例として、A={社員ID,社員名}、B={社員名}とすると
    社員ID,社員名の組の値が決まれば、社員名の値が一意に決まります。(A→B)
    逆に社員名の値が決まっても、社員ID,社員名の組の値は(同姓同名等があるため)一意には決まりません。(B→Aは成り立たず)

A  イ:@の例に加え、C={性別}とすると、CはAに関数従属(A→C)が成り立ちますが、
        CはBに関数従属(B→C)は成り立ちません。(社員名のみから性別は決まらない)
    ウ:@により、BがAの部分集合の場合はAはBに関数従属(B→A)は成り立ちません。
2021.01.10 22:09
柴犬さん(No.3)
説明ありがとうございます!
どんな値が入るかで考えていましたが、列で考えればいいのですね。

とてもわかり易かったです。
2021.01.11 11:11

【返信投稿用フォーム】

お名前(10文字以内)

顔アイコン


本文(2,000文字以内)

記事削除用パスワード(20文字以内)

プレビュー

※宣伝や迷惑行為を防止するため当サイトとIPAサイト以外のURLを含む記事の投稿は禁止されています。

投稿記事削除用フォーム

投稿No. パスワード 
© 2016-2021 データベーススペシャリストドットコム All Rights Reserved.

Pagetop