具有主题和子主题的成绩的MySQL表设计

时间:2018-01-16 17:08:39

标签: mysql sql database mysqli database-design

我为Grades(grades_tbl)和Subject(subject_tbl)创建了2个表,但我想进一步制作一个我感到困惑的子主题表。以下是2个表

grades_tbl

grade_id - grade_name
=====================
10          Class 9
11          Class 10

subject_tbl

subject_id - subject_name  - grade_parent
=========================================
1             English          10
2             Maths            10
3             Science          11

现在我想要子科目,例如心理数学,这将属于数学。我想到了一个想法如下:

subject_id - subject_name  - grade_parent - hasSubject
======================================================
1             English          10              0
2             Maths            10              1
3             Science          11              0
4             Mental Maths     2               0

我将检查每个主题,如果hasSubject为1,那么它将再次循环以在 subject_tbl 中找到grade_parent。我不知道这是否是一种正确的方法。请帮帮我!

1 个答案:

答案 0 :(得分:0)

为您的“子科目”单独设置一个表格。您需要的只是子主题的id,主题表中的subject_id和子主题的名称。

然后你可以加入这两个表来获得哪些科目有子科目等。