部分関数従属とは?ぶぶんかんすうじゅうぞく
部分関数従属とは、複合キーを持つ関係で、非キー属性が候補キーの全体ではなく一部だけで決まってしまう従属関係。同じ事実が行数ぶん重複して記録されるため、更新時異常の原因になる。この従属を別の関係へ切り出して解消した状態が第2正規形にあたる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
関数従属は「この属性の値が決まれば、あの属性の値も1つに決まる」という業務上の規則を写したもの。部分従属が残っているということは、性質の異なる2つの事実——取引ごとに変わる明細と、商品そのものに固有の属性——が1つの表へ同居している、という設計上の事実を示している。正規化がレビューで使えるのは、この違和感を検証可能な形で指摘できるからにほかならない。
具体例
(注文番号, 商品コード)が主キーの明細表に商品名を置くと、商品コードだけで商品名が決まるため部分従属になる。商品名を変えたい日に、その商品を含む全明細行を更新することになり、途中で失敗すれば同じ商品が2つの名前を持つ。商品マスタへ移せば更新は1行で済む。
試験での引っ掛け
主キーが単一属性なら「キーの一部」が存在しないため、部分関数従属は原理的に起こらず、第1正規形であれば自動的に第2正規形になる。また、非キー属性を経由して別の非キー属性が決まる推移的関数従属はこれとは別物で、取り除くのは第3正規形の役割にあたる。
関連用語
出た過去問
出典:令和元年度 秋期 システムアーキテクト試験 午前Ⅱ 問21(IPA)解説で登場
関数従属{A, B}→Cが完全関数従属性を満たすための条件はどれか。
正解:A→C及びB→Cのいずれも成立しないこと
要点:完全関数従属は決定項の真部分集合では決定できないこと
完全関数従属とは、{A, B}→C が成り立ち、かつその真部分集合である{A}や{B}だけでは C を決定できない状態を指す。逆に A→C や B→C が成り立つ場合は部分関数従属となり、第2正規形に反する原因になる。
出典・参考
高度試験 午前I(高度午前I 相当)のシラバスの3 技術要素 > 2. データベース設計 > (3) データの正規化に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。