我的武术俱乐部有一个学生管理系统,不同类型的信息存储在不同的数据库表中,
出勤率和评分会为每个新事件添加一个新行。
我正在尝试从学生表中获取信息,并从出勤表中列出参加的总课程,从评分表中找到他们当前的成绩信息,并按照 Grades_list 表中设置的顺序对其进行排序。
所以我有这个:
SELECT * , COUNT( date ) AS `count`
FROM attendance a
JOIN students s ON a.student_id = s.student_id
JOIN gradings g ON g.student_id = s.student_id
JOIN grades_list gl ON gl.grade = g.grade
WHERE s.class <>'Little Monsters'
AND date
BETWEEN'2013-01-01'
AND now()
GROUP BY a.student_id
ORDER BY gl.ID
这目前做了正确的事情,但它没有显示所有结果,如果每个人的等级有多个条目(最终会有),它会显示一个结果但不是最新的。我目前在评分表中有两个人,每个人有两个条目,其中一个人根本没有显示,另一个人显示他们最旧的记录,应该显示最新的记录。
希望一切都说得通。
干杯。