[pgsql-jp: 37417] Re: ひとつの項目の関連テーブルが二箇所に分かれるような場合の構成について

高田 takada @ cyberstar.co.jp
2006年 8月 11日 (金) 20:09:44 JST


 水野様、中井様ありがとございます。

> なぜ、別々のテーブルにしなければならないのかわかりません。
> 構造が同じなら、同じテーブルにすべきだと思います。

一般会員と企業会員では登録項目が多少異なっているため、もちろん別々のテーブル
に登録しなければならないと考えておりましたが、やはり同一テーブルで管理したほ
うがなにかと便利ですね。
ということで、共通部分は同一テーブルで管理し、それぞれの固有のフィールドを各
詳細テーブルに入れてみようかと思います。

 [会員マスタ]
 1)会員ID
 2)名称
 3)住所
 4)一般会員/企業会員の識別フラグ

 [一般会員詳細テーブル]
 1)会員ID
 2)生年月日
 3)職業

 [企業会員詳細テーブル]
 1)会員ID
 2)社員数
 3)資本金

 [記事テーブル]
 1)記事ID
 2)会員ID
 3)記事内容

基本的には一般会員が圧倒的多数を占めるのですが、そういう場合は会員マスタと一
般会員詳細テーブルをまとめたほうが妥当でしょうか。企業会員にとっては必要のな
い「生年月日」などの項目がNULLになります。そのほうが抽出するときに結合する手
間は省けますが。。。




pgsql-jp メーリングリストの案内