最初の列がユーザー名を参照し、他の列が学生が行う各科目と各科目のスキルレベルを参照する表があります。これらの科目は、数学、芸術などのいくつかの主要な科目の流れに属しています。
次の表にデータを正規化します。
件名_ストリーム
id Main_Stream Subject
1 Math pure-maths
2 Math applied-maths
3 Art Dancing
4 Art Music
学生テーブル
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
同様のクエリを使用して、特定の学生の教科とそのスキル レベルを取得できます。
これとは別に、科目または科目のコレクションを選択するときに学生を選択する必要があります。そして、名前、科目、スキルレベルを降順で出力します。
ここでは、どの生徒もさまざまなストリームでさまざまな科目を行うことができます。
しかし、既存のテーブルからこの結果を簡単に取得することはできません。これを正しく行う方法は?データベース スキーマを改善する必要がありますか?