我已经尝试了很多来做到这一点,但没有成功,所以我在这里寻求帮助。我将尝试提供完整的详细信息,以便我可以帮助自己获得最需要的解决方案。
来自我的 MySQL 数据库
Table (students)
--------------------------------
studentID | class_id | and other info
Table (class)
-------------------------------
classID | name | other info
Table (subjects)
--------------------------------
subjectID | name | class_id (references Class.classID)
Table (exam_type)
--------------------------------
exam_typeID | name | desc | start_date
Table (result)
---------------------------------------------
student_id | exam_type_id | subject_id | mark
在我的查询中,我有这个:
SELECT subjects.name, exam_type.name, result.mark FROM subjects
LEFT JOIN result ON result.subject_id=subjects.subjectID
JOIN exam_type ON exam_type.exam_typeID=result.exam_type_id
WHERE result.student_id=$x
ORDER BY
subjects.name, exam_type.name
在查询中 $x 是学生的 id 以显示他/她的结果
查询返回这个
差不多到这个水平我还好现在我的头痛是我想以这种方式取代结果......已经看到我的设计了。
如果有人指出我正确的方向来替换第一张图片中的信息,这将非常有帮助。
----------------------------------------------
CA Tests | Exams
-----------------------------------------------
subjects | 1 | 2 | 3 | score
-----------------------------------------------
Agricultural science | 10 | 9 | 8 | 56
-----------------------------------------------
English language | 12 | 13 | 12 | 43
-----------------------------------------------
French Language | 11 | | |
已解决:通过 JIML 的解决方案