作記録

記憶代わり

テーブルの 1対n について

関連(Relationship)とは

関連(Relationship)とは、1つのテーブルのPrimary Keyが他のテーブルのカラムになっている事を指す。

関連の種類

関連には、1対1、 1対n、n対n の関連がある。
1対1になる場合は、そのテーブルは1つに出来る可能性が高い。

1対nの例

●概要図

f:id:JTNsaku:20201020173524j:plain

上記の例が1対nのテーブルの関連である。

●前提

社員は複数の支店の支店長になる事が出来る。

●社員テーブルから見た支店長テーブル

社員テーブルが1つのレコードを登録した場合、社員ID(とその他の属性)が登録される。
前提の通り社員は複数の支店の支店長になる事が出来る為、支店長テーブルには、その社員IDが複数登録出来る。
よって社員テーブルから見た支店長テーブルは n の関係にある。

●支店長テーブルから見た社員テーブル

支店長テーブルが1つのレコードを登録した場合、社員ID(とPrimary Keyの支店名)が登録される。
社員IDはPrimary keyであり、ユニークなkeyの為、社員テーブルには、その社員IDは複数登録出来ず1つしか存在しないものとなる。
よって、支店長テーブルから見た社員テーブルは 1 となる。

●登録後のテーブルの具体例

・社員テーブル
社員ID 名前 性別 年齢
001 小宮勇気 30
002 落合莉乃 28
003 中西春香 24
・支店長テーブル
支店名 社員ID
東京 002
千葉 003
神奈川 003
茨城 001

●結論

よって、社員テーブル と 支店長テーブル の関係は 1対n である。