DB設計 第3正規化

DB設計する時に正規化すると思うんだけど、結局第3正規化だけ押さえとけば良さそうだし、言葉にしとこう。(1と2は普通にそうしないと気持ち悪いだろうからいいでしょ)

 

要はそのテーブルの非キー列は(、ってか主キー以外のカラム)は必ず主キー列に対してのみ完全従属する関係になるまでテーブル分割しようってことだと思った。

 

ちなみに1、2、3の正規化はnullのセルが無くなり、データの損失が無いようテーブルを分割していく(無損失分解)から、SQLの結合文を使えば正規化する前のテーブルに戻るはず。

 

SELECT hoges.foo

                hoges.bar

FROM  hoges INNER JOIN hogehoges

     ON   hoges.foobar = hogehoges.foobar;

みたいな