2015-10-14 55 views
0

所以我目前的东西,看起来有点像下面摆弄。MySQL的多个重复的处理(在愚弄愚弄)

  1. 如果学生(学生)参加了同一班级(学科)的3个或更多实例,它的设计就是显示来自考勤表的内容。
  2. 有时老师(老师)有替代品,所以我们需要知道在学生获得三堂课时谁在教学。这就是为什么我们需要它来显示老师,以及同一个学生参加同一班级的3个或更多实例的课程。

    SELECT i.teacher, i.subject, i.student FROM attendance i INNER JOIN ( SELECT subject, student, COUNT(*) FROM attendance GROUP BY subject, student HAVING COUNT(*) > 2) temp ON temp.subject = i.subject AND temp.student = i.student ORDER BY subject, student

我的困境是,我已经得到了它的显示3点或更多的实例,并显示这些实例......但是我仍然需要压缩下来的同一个老师的多个实例,学生和科目不会多次列出,说实话我已经尽可能地得到了。

最后的就是我留下的,并试图删除重复项。

帮助非常感谢一个SQL Fiddle

回答

0

看起来你靠近,你可以:

  • 使用SELECT DISTINCT ....

  • 添加SELECT ..... FROM ... JOIN .... GROUP BY i.teacher, i.subject, i.student GROUP BY ...