我有一張表,其中第一列是指用戶名,其他列是指學生所做的每個科目和他們的每個科目的技能水平。這些科目屬於幾個主要科目流,如數學,藝術等。如何正確標準化表中的數據集?
我將數據標準化爲以下表格。
Subject_Stream
id Main_Stream Subject
1 Math pure-maths
2 Math applied-maths
3 Art Dancing
4 Art Music
Student_table
id name subject skill_level
1 xxx Music 5
2 xxx Pur-math 4
3 xxx Applied-math 1
4 yyy Music 3
select subjects, skill_level where usename="xxx" order by Desc
我可以使用類似的查詢來獲取對象和他們的技術水平對於任何給定的學生。
除此之外,我需要選擇學生,當我選擇任何科目或集合的主題,並打印他們的姓名,主題,技能水平降序。
在這裏,任何學生都可以在不同的流中做不同的科目。
但我不能輕易從我現有的表中得到這個結果。如何正確執行此操作? 我是否需要改進數據庫模式?