読み方 : すいいてきかんすうじゅうぞく

推移的関数従属【transitive functional dependency】

概要

推移的関数従属とは、リレーショナルデータベース(RDB)の表で、複数の関数従属関係が推移的に成り立つ関係のこと。属性Xから属性Yが、Yから属性Zが一意に導かれるとき、ZはXに推移的関数従属しているという。
推移的関数従属のイメージ画像

表の中で、ある属性の値を決定すると別の属性の値も一意に決まる性質を「関数従属性」という。属性Xを決めると属性Yが定まるとき、「X→Y」のように表記し、Xを「決定項」、Yを「従属項」あるいは「被決定項」という。

属性X、Y、Zがあり、Xが決まるとYも決まり、Yが決まるとZも決まるという関係、すなわち、X→Y、Y→Zが推移的に成り立つ(かつ、厳密にはY→Xが成り立たない)とき、ZはXに推移的関数従属しているという。

例えば、「社員ID, 氏名, 住所, 郵便番号」という表で、「社員ID→住所」が成り立つが、「住所」が決まれば「郵便番号」も一意に定まるため「住所→郵便番号」も成り立っている。このとき、「社員ID→郵便番号」という従属性も成立し、「郵便番号」は「社員ID」に推移的関数従属しているという。

(2023.6.6更新)

資格試験などの「推移的関数従属」の出題履歴

▼ 基本情報技術者試験
令5公 問6】 次の関数従属を満足するとき,成立する推移的関数従属はどれか。ここで,“A→B” はBがAに関数従属していることを表し,“A→{ B,C }” は,“A→B” かつ “A→C” が成立することを表す。