電話帳のテーブル設計
ユーザ毎に電話番号を登録します。
ユーザは複数の電話帳を登録できて、上記の登録済みの電話番号を電話帳に登録できます。
電話番号は、複数の電話帳に登録が可能です。
としたい時のテーブル設計で悩んでいます。
今のところは、電話帳テーブルのユニークなIDをtag的に電話番号に付与しようと思っています。
ただ、そうすると、tagカラムの文字列長が気になっちゃったり、CLOB使うか?とか思っちゃったり、悩みどころが多くて困っています。
もちろん電話帳から電話番号を絞りこんだりしたいです。
イメージ的には、スマホなどのアドレス帳で、1つの連絡先に複数のグループを指定できるというのが近い感じだと思います。
こういう多対多のようなデータ設計って、どうしてやるのが良いんでしょうか?
今回以外でも似たような状況があったんですが...その時は紐付けテーブル(電話帳と電話番号を結び付けるだけのテーブル)が用意されていました。