mysql - 這種分級一對多,且分級不平衡的模型該怎麼設計表?
習慣沉默
習慣沉默 2017-05-18 10:48:38
0
4
731

最近遇到一個很糾結的業務模型:
要給一個教師培訓機構設計題庫,題庫裡每題都隸屬某個分支,關鍵奇葩就是在這個分支的定義上,這個分支在業務上是如下定義的:
首先,分學段:幼兒,小學,初中,高中
學段下面,是一級學科,
幼兒:綜合素質,保教技能
小學:綜合素質,教育能力,專業技術能力
國中:綜合素質,教學能力,專業技術能力
高中:綜合素質,教學能力,專業技術能力

然後,在「專業技術能力」下,也分語文,數學,英文。 。 。 。等等第二級學科,且,小學,國中,高中擁有的下級學科還不一樣。但是綜合素質,教育能力這些又沒有第二級學科。

於是這種分級不平衡現象導致這個題庫裡的題目出現一個很尷尬的現象
有的題目,屬於一級學科,而有的題目,則屬於二級學科

當然我是可以把題庫表建成這樣

題目 id 題目名稱 所屬 1 級學科 所屬 2 級學科

但是我總覺這似乎哪裡不對勁,但又說不出到底哪不對勁。
請各位指點

習慣沉默
習慣沉默

全部回覆(4)
洪涛

最簡單的方法就是設計成一棵樹的結構

小葫芦

可能是這樣的

學科(id,學科名稱,科級,父級學科);

經供參考,具體可依操作再劃分一下,不一定非要一張表。

phpcn_u1582

學科表(學科id,學科名,學科科級,上級科級,階段id)
題目表(題目id,所屬學科id,題目內容)

迷茫

新建三張表來解決,學段表、學科表、試題表
學段表(id,名稱)
學科表(id,名稱,級別,父級學科id)
試題表(id,名稱,試題內容,學段id,學科id)

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板