スーパタイプ・サブタイプとは?スーパタイプ・サブタイプ
スーパタイプ・サブタイプとは、共通する属性を上位の実体(スーパタイプ)にまとめ、種類ごとにしか持たない属性を下位の実体(サブタイプ)へ切り出すE-R図の表現。サブタイプはスーパタイプの主キーを引き継ぎ、どの種類かを表す区分の属性によって分かれる。空欄だらけの表を作らずに、種類の違いを構造として表せる。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
種類ごとに違う項目を一つの表へ押し込むと、大半が空欄の列が並び、どの列がどの種類で必須なのかがデータ側からは読めなくなった。かといって種類ごとに完全な別表へ分けると、共通の処理を種類の数だけ書くことになる。その中間を取る道具がこの階層化である。支援士でも、利用者という共通の実体に権限を持たせるのか、種類ごとに権限を変えるのかというアクセス制御の設計に、この切り分けがそのまま効いてくる。
具体例
Salesforceは、取引先(Account)に個人顧客向けの派生である個人取引先(Person Account)を用意している。名称や所在地のように法人でも個人でも要る項目は上位に、氏名や生年月日のように個人にしかない項目は派生側に置く形が、この構造にあたる。
試験での引っ掛け
実装は、一つの表にまとめて使わない列をNULLにする方式、種類ごとに表を分ける方式、上位表と下位表に分割する方式の三通りがあり、NULLの多さと結合の回数がトレードオフになる。サブタイプに独自の主キーを新しく振ると上位と一対一で対応しなくなり、区分の属性を持たせ忘れるとどの下位に当たるかが判定できなくなる。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。