データベーススペシャリスト暗記無料で始める

導出属性とは?どうしゅつぞくせい

導出属性とは、他の属性や他の行の値から計算で求められる属性。UMLのクラス図では属性名の前に「/」を付けて示す。モデル上は冗長なので概念モデルでは求め方だけを持ち、実際に列として格納するかどうかは、参照と更新のどちらが多いかを見て物理設計で判断する。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の過去問では1問の解説で触れられています。

データベーススペシャリスト試験の頻出用語/午前II

別名:派生属性、derived attribute

この語が出る過去問を解く →

背景

集計値を参照のたびに計算すれば常に正しいが遅く、列として持てば速いが元データの更新に合わせて直し続けなければ嘘になる。この二択はモデリングの段階では決められず、参照と更新のどちらが多いかという実行時の性質で決まる。導出属性という印を付けておくことで、判断を物理設計まで持ち越しつつ、後から見て「これは計算で出る値だ」と分かるようにしている。

具体例

会員の年齢は生年月日と基準日から求まる導出属性で、列に持てば毎日ずれていく。受注の合計金額は明細の金額合計から求まり、PostgreSQLの生成列(GENERATED ALWAYS AS)のようにDBMS側で計算を保証させる手もある。

試験での引っ掛け

導出属性は格納してはいけない、というルールではない。非正規化として意図的に持つ判断はあり得るが、そのとき整合を保つ責務がトリガや生成列、あるいはアプリケーションに移る点まで含めて設計する必要がある。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 1問の解説で触れられる
  • 分野:午前II
  • 導出属性は格納してはいけない、というルールではない。