mysql - 這種分級一對多,且分級不平衡的模型該怎么設(shè)計表?
問題描述
最近遇到一個很糾結(jié)的業(yè)務(wù)模型: 要給一個教師培訓(xùn)機構(gòu)設(shè)計題庫,題庫里每道題都隸屬某個分支,關(guān)鍵奇葩就是在這個分支的定義上,這個分支在業(yè)務(wù)上是如下定義的: 首先,分學(xué)段:幼兒,小學(xué),初中,高中 學(xué)段下面,是一級學(xué)科, 幼兒:綜合素質(zhì),保教技能 小學(xué):綜合素質(zhì),教育能力,專業(yè)技術(shù)能力 初中:綜合素質(zhì),教學(xué)能力,專業(yè)技術(shù)能力 高中:綜合素質(zhì),教學(xué)能力,專業(yè)技術(shù)能力
然后,在“專業(yè)技術(shù)能力”下,還分語文,數(shù)學(xué),英語。。。。等等第二級學(xué)科,且,小學(xué),初中,高中擁有的下級學(xué)科還不一樣。但是綜合素質(zhì),教育能力這些又沒有第二級學(xué)科。
于是這種分級不平衡現(xiàn)象導(dǎo)致這個題庫里的題目出現(xiàn)一個很尷尬的現(xiàn)象 有的題目,屬于一級學(xué)科,而有的題目,則屬于二級學(xué)科
當(dāng)然我是可以把題庫表建成這樣
題目 id 題目名稱 所屬 1 級學(xué)科 所屬 2 級學(xué)科
但是我總覺這似乎哪里不對勁,但是又說不出到底哪不對頭。 請各位指點
問題解答
回答1:最簡單的辦法就是設(shè)計成一棵樹的結(jié)構(gòu)
回答2:可能是這樣的
學(xué)科(id,學(xué)科名稱,科級,父級學(xué)科);
經(jīng)供參考,具體可根據(jù)操作再劃分一下,不一定非要一張表。
回答3:學(xué)科表(學(xué)科id,學(xué)科名,學(xué)科科級,上級科級,階段id)題目表(題目id,所屬學(xué)科id,題目內(nèi)容)
回答4:新建三張表來解決,學(xué)段表、學(xué)科表、試題表學(xué)段表(id,名稱)學(xué)科表(id,名稱,級別,父級學(xué)科id)試題表(id,名稱,試題內(nèi)容,學(xué)段id,學(xué)科id)
