テーブルの 1対n について
関連(Relationship)とは
関連(Relationship)とは、1つのテーブルのPrimary Keyが他のテーブルのカラムになっている事を指す。
関連の種類
関連には、1対1、 1対n、n対n の関連がある。
1対1になる場合は、そのテーブルは1つに出来る可能性が高い。
1対nの例
●概要図
上記の例が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
である。