0

これを1NFに非正規化するにはどうすればよいですか。

    --------------------------------------------------
    |         |         |              |             |
    |         V         V              V             V
-----------------------------------------------------------
|post_id|post_title|post_text|post_submited_time|user_name|
-----------------------------------------------------------


    ------------------------------------------------
    |            |                 |               |           
    |            V                 V               V           
---------------------------------------------------------
|comment_id|comment_text|comment_submited_time|user_name|
---------------------------------------------------------

   -----------
   |         |
   |         V
--------------------
|post_id|comment_id|
--------------------

その結果を正規化すると、テーブルがアップしたという1つの正規形で1つのテーブルが必要です。

4

1 に答える 1

1

列のデータ型として配列または複雑なデータオブジェクトを持つことができるpostgresqlのようなデータベースがあるため、使用しているデータベースによって異なります。通常、価格が伴います。このデータをインデックス化したり整理したりすることはできません。その場合、たとえば、ユーザーがどの投稿にどのコメントを付けたかを見つけるのが難しくなる可能性があります。ご自身の Stackoverflow.com プロファイルを見ると、この情報を分離しておくことの利点がわかります。

ただし、1 つのテーブルを削除できます。コメント テーブルで post_id への外部キーを作成すると、デザイン内のテーブルが 1 つ少なくなりますが、必要に応じてインデックスを使用できます。

于 2013-05-18T19:36:48.793 に答える