0

私には200人のユーザーがいますが、各ユーザーは最終的に特定のデータを含む「reviewINFO」テーブルを持ちます。

各ユーザーは3〜4か月ごとにレビューを行います

したがって、レビューごとに、「reviewINFO」テーブル内に新しい行が作成されます。

これは私が立ち往生しているところです。各行内のテーブルをシリアル化する必要があるかどうかはわかりません。例:

->リンク

"USER1reviewINFO"-row1-> USER1table1

             -row2->USER1table2
             -row3->USER1table3
             -row4->USER1table4
             -row5->USER1table5

"USER2reviewINFO"-row1-> USER2table1

             -row2->USER2table2
             -row3->USER2table3
             -row4->USER2table4
             -row5->USER2table5

この方法を使用すると、2年以内に数千行になります。そして、私はそれを管理するのが難しいと思います。

「Userxtablex」は、子の名前、年齢、ブール値の動的な行を持つテーブルです

私が考えているのは、各USERxtableを対応する行にシリアル化することです。

これを複雑にしたり非効率にしたりしたくないので、助けてください

4

1 に答える 1

0

一般に、目的を達成するために、このような性質のデータを表の行にシリアル化する必要はありません (これは、ユーザーとレビューの間の暗黙のリンクであると想定しています)。

あなたがする必要があるのはuser_id、すべてのレビューが 1 つのテーブルにパッケージ化され、ユーザー テーブルに数値的に関連付けられるように、レビューをキーにすることです。

ユーザー テーブルに AUTO_INCREMENT 主キーがあると仮定すると、必要なのはuser_idレビューがどのユーザーに関連するかを表すレビュー テーブルのフィールドだけです。それがあなたが提案しているものであれば、各ユーザーに個別の構造は必要ありません。レビューにも日付フィールドを含めることができるため、特定の年または時間枠に対してクエリを実行できます。

次に、JOIN クエリを使用して特定のユーザーまたはレビューに関連するデータ セットを選択し、通常の WHERE 句を適用して取得する結果セットを決定します。

于 2012-06-28T17:10:11.520 に答える