我有一个成绩表,可以记录学生的成绩。得分表具有3个字段(gradeEventId,Score,StudentId)。问题是我一直在寻找一种方法来在一个查询中检索与每个gradeEvent的每个学生相关的所有分数,并将其全部显示在一页上。
我一直在使用的查询
$sql = "
SELECT
student.id, name, UNIX_TIMESTAMP (gradeEvent.EventDate) as eventDate,
score.score AS score, gradeEvent.subjectId
FROM student_table
INNER JOIN gradeEvent_table
RIGHT JOIN classLevel_table ON classLevel.classId = student.classId
LEFT JOIN score_table ON student.id = score.student.id
AND gradeEvent.eventId = score.gradeEventId
WHERE gradeEvent.eventId = $gradeEvent
AND student.classId = $class_id
仅从单个成绩事件中检索分数。
是否可以检索不止一个年级事件的分数?请协助
最佳答案
可以使用=
代替使用IN
:
WHERE gradeEvent.eventId IN (?, ?, ?, ?)
?
是各种$gradeEvent
的参数关于mysql - 如何在一个实例上检索一个以上成绩事件的分数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19272907/