カラムを追加するべきか別テーブルとして切り出すべきかの指針をまとめる。
カラムを追加する
メリット
- 運用が楽(SQLでJOINする必要がない)
- 用意に1対1の関係性が担保できる
デメリット
- カラム数が増えて分かりづらくなる
別テーブルをつくる
メリット
- 1対Nの関係をとれる
- 既存のテーブルを使った処理に影響を与えない
デメリット
- 運用が大変(SQLでJOINする必要がある)
指針
以下の場合は別テーブルとして分けた方が良い。逆にそれ以外の場合はカラム追加で大丈夫。
- 1対Nの関係になるとき
- 履歴を管理したいとき
- 追加カラム数が多いとき
1対1の関係の場合でも、セキュリティ上の理由からテーブルを分けた方がいい場合もある。
マイナンバーなど。