---
title: "ER図の多重度とは？1対1・1対多・多対多の読み方【基本情報技術者試験】"
description: "ER図の「1」「多」を、片方のエンティティを1件に固定して相手が何件対応するかで判断する方法を整理します。関係を一本ずつ読み、直接結ばれていない要素を勝手に結び付けない科目Aの判断軸も解説します。"
last_modified_at: "2026-08-02"
canonical_url: "https://stemtazoo.github.io/fe/er-diagram-cardinality/"
section: "fe"
---

## まず結論

ER図の多重度は、**一方のエンティティを1件に固定したとき、相手が何件対応するか**を表します。

基本情報技術者試験では、図全体を一度に読もうとせず、次の順番で判断するのがポイントです。

```text
1. 関係を表す線を一本だけ見る
2. 片方を1件に固定する
3. 相手が1件か複数件かを考える
4. 反対方向からも確認する
```

また、直接線で結ばれていないエンティティ同士の関係を、勝手に推測しないことも大切です。

## 直感的な説明

学校にある「教師」「クラス」「教室」を例に考えます。

```text
教師 1 ─ 多 クラス
```

この関係は、次のように読みます。

```text
1人の教師は、複数のクラスを担当できる
1つのクラスを担当する教師は、1人である
```

次に、クラスと教室の関係を見ます。

```text
クラス 1 ─ 1 教室
```

これは、次の意味です。

```text
1つのクラスには、1つの教室が割り当てられる
1つの教室には、1つのクラスが割り当てられる
```

大切なのは、**線を一本ずつ分けて読むこと**です。

教師と教室が直接線で結ばれていないなら、

```text
教師と教室を決めれば、クラスが必ず1つに決まる
```

とは限りません。

例えば、1人の教師が複数のクラスを担当し、それぞれ別の教室を使う場合、同じ教師に対して複数のクラスが候補になります。

## 定義・仕組み

### 多重度とは

多重度とは、エンティティ同士の関係において、**一方の1件に対して、もう一方が何件対応するか**を示すものです。

代表的な関係は次の三つです。

| 関係 | 意味 | 例 |
|---|---|---|
| 1対1 | 一方の1件に、相手も1件だけ対応する | 社員と社員証 |
| 1対多 | 一方の1件に、相手が複数件対応する | 部署と社員 |
| 多対多 | 両側とも相手が複数件対応する | 学生と科目 |

### 1対1

```text
A 1 ─ 1 B
```

読み方は次のとおりです。

```text
1つのAに、1つのBが対応する
1つのBに、1つのAが対応する
```

例えば、社員と社員証が1対1なら、1人の社員には1枚の社員証が対応し、1枚の社員証も1人の社員だけに対応します。

### 1対多

```text
A 1 ─ 多 B
```

読み方は次のとおりです。

```text
1つのAに、複数のBが対応できる
1つのBに対応するAは、1つである
```

例えば、部署と社員が1対多なら、1つの部署には複数の社員が所属できます。一方、社員1人が所属する部署は1つです。

### 多対多

```text
A 多 ─ 多 B
```

読み方は次のとおりです。

```text
1つのAに、複数のBが対応できる
1つのBにも、複数のAが対応できる
```

例えば、学生は複数の科目を履修でき、1つの科目にも複数の学生が参加できます。

関係データベースでは、多対多をそのまま表にせず、間に連関エンティティを置いて二つの1対多に分解します。詳しくは、[多対多の関係とは？連関エンティティで1対多に分解する方法](https://stemtazoo.github.io/fe/many-to-many-associative-entity/)で整理しています。

このテーマは、基本情報技術者試験の「データベース」や「ER図」と関係する内容です。公式の出題範囲やシラバスは、[IPA：基本情報技術者試験](https://www.ipa.go.jp/shiken/kubun/fe.html)から確認できます。

## 科目Aでどう出る？

科目Aでは、ER図を見て、エンティティ間の関係を正しく説明している選択肢を選ぶ問題が出ます。

### 判断手順

```text
1. 一本の線だけに注目する
2. 左側を1件に固定する
3. 右側が何件対応するか読む
4. 今度は右側を1件に固定する
5. 選択肢の文章と照らし合わせる
```

例えば、次の関係を考えます。

```text
教師 1 ─ 多 クラス
```

教師を1人に固定すると、その教師は複数のクラスを担当できます。

```text
教師1人
→ クラスA
→ クラスB
→ クラスC
```

一方、クラスを1つに固定すると、そのクラスを担当する教師は1人です。

したがって、次の説明は正しいと判断できます。

```text
1人の教師が、複数のクラスを担当することがある
```

### 二本の関係を混ぜない

次のようなER図があったとします。

```text
教師 1 ─ 多 クラス 1 ─ 1 教室
```

この図から直接読めるのは、次の二つです。

```text
教師とクラスの関係
クラスと教室の関係
```

教師と教室の間には直接線がないため、

```text
教師と教室を決めれば、クラスが必ず決まる
```

とは判断できません。

1人の教師が複数のクラスを担当していれば、その教師に対応するクラスも複数あるからです。

## どんな場面で使う？

ER図は、業務で扱うデータと、そのデータ同士の関係を整理するときに使います。

例えば、販売管理では次のような関係があります。

```text
顧客 1 ─ 多 注文
注文 1 ─ 多 注文明細
商品 1 ─ 多 注文明細
```

この図から、次のことが分かります。

```text
1人の顧客は複数の注文を行える
1つの注文には複数の注文明細がある
1つの商品は複数の注文明細に登場できる
```

ER図を読むときは、業務上ありそうかどうかだけで判断せず、**図に書かれた線と多重度を根拠に読む**ことが重要です。

## よくある誤解・混同

| 誤解 | 正しい理解 |
|---|---|
| 図全体を一度に読めばよい | 関係を表す線を一本ずつ読む |
| エンティティが複数あるから「多」 | 片方を1件に固定し、相手の対応件数を見る |
| `A 1 ─ 多 B`なら、1つのBに複数のAが対応する | 1つのAに複数のBが対応する |
| 直接線がなくても、他の関係から一意に決まる | 図に直接示されていない関係は勝手に断定しない |
| 1対多は、常に実際の件数が複数でなければならない | 複数件対応できるという設計上の関係を表す |
| 多対多は、そのまま一つの表で実装する | 通常は連関エンティティを置き、二つの1対多に分解する |

### 記号の位置だけで判断しない

```text
A 1 ─ 多 B
```

この図を、

```text
Bが多いから、Bから見てもAが複数
```

と読んではいけません。

正しくは、Aを1件に固定したとき、複数のBが対応できるという意味です。

反対方向では、Bを1件に固定すると、対応するAは1件です。

## まとめ（試験直前用）

- 多重度は、片方を1件に固定して相手の対応件数を見る
- ER図は、関係を表す線を一本ずつ読む
- `1対多`は、1側の1件に多側が複数件対応する
- 同じ線を反対方向からも確認する
- 直接線で結ばれていない関係は、勝手に一意だと判断しない
- 多対多は、連関エンティティで二つの1対多に分解する
