検索

ホームページ  >  に質問  >  本文

mysql - 不均衡な階層を持つこの階層型 1 対多モデルのテーブルを設計するにはどうすればよいですか?

最近、非常に複雑なビジネス モデルに遭遇しました:
教師養成機関用に質問バンクを設計する必要があります。質問バンク内の各質問は特定のブランチに属します。重要な奇妙な点は、このブランチの定義です。この支店はビジネスを行っています 上記は次のように定義されます:
まず、就学段階に分けられます:幼稚園、小学校、中学校、高等学校です。第一段階科目、
児童:総合的な資質、保育力
小学校:総合的な資質、教育力、専門的技術力
中学校:総合的な資質、指導力、専門的および技術的能力
高等学校:総合的な資質、指導力、専門的および技術的能力

次に、「専門的・技術的能力」の下に、中国語、数学、英語にも分かれています。 。 。 。 2級の科目を待ってください、小学校、中学校、高校の下位の科目は異なります。ただし、総合的な資質や教育力などの2次科目はありません。

したがって、この採点の不均衡は、この問題バンクの問題で非常に恥ずかしい現象を引き起こします。

いくつかの質問は第 1 レベルの科目に属し、一部の質問は第 2 レベルの科目に属します。
もちろん、このように質問バンクテーブルを作成できます

質問ID 質問名 第1レベルの分野 第2レベルの分野

でも、いつも何かがおかしいと感じているのですが、何がおかしいのかわかりません。

アドバイスをお願いします

習慣沉默習慣沉默2740日前698

全員に返信(4)返信します

  • PHP中文网

    PHP中文网2017-05-18 10:50:38

    最も簡単な方法は、ツリー構造のようにデザインすることです

    返事
    0
  • 高洛峰

    高洛峰2017-05-18 10:50:38

    こんなかも

    分野 (ID、被験者名、被験者レベル、親被験者);

    これは参考用です。詳細は、必ずしも表である必要はありません。

    返事
    0
  • phpcn_u1582

    phpcn_u15822017-05-18 10:50:38

    科目テーブル (科目 ID、科目名、科目レベル、上位科目レベル、ステージ ID)
    質問テーブル (トピック ID、科目 ID、科目内容)

    返事
    0
  • 迷茫

    迷茫2017-05-18 10:50:38

    問題を解決するための 3 つの新しいテーブルを作成します。学業段階テーブル、科目テーブル、テスト問題テーブル
    学習ステージ テーブル (id、名前)
    科目テーブル (id、名前、レベル、親科目 ID)
    試験問題テーブル (id、名前、テスト問題の内容、学業段階 ID、科目 ID)

    返事
    0
  • キャンセル返事