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