使用:
- 最大
- グループ化
SQL> SELECT NAME, 2 MAX(subject_1) subject_1, 3 MAX(marks_1) marks_1, 4 MAX(subject_2) subject_2, 5 MAX(marks_2) marks_2 6 FROM t 7 GROUP BY name; NAME SUBJECT_1 MARKS_1 SUBJECT_2 MARKS_2 ---- --------- ---------- --------- ---------- Jon Maths 60 Science 70 Tom Maths 90 Science 50 SQL>
ちなみに、テーブルのデザインについて考える必要があります。 。 name, subject, marks
の3つの列しか持つことができませんでした 。
個別の列が必要な場合 同じテーブルに、単一の行として配置する必要があります 各学生のために。そして、あなたが学生のための新しい主題を持っているとき、それから更新 新しい行を追加する代わりに、その学生の行。