在MySQL中连接两个表时避免重复

时间:2016-03-24 07:22:35

标签: mysql

我编写了代码来提取下表的数据。第一个是学生表:

Student | Course | Post |
--------|--------|------|
   1    |   67   |  4   |
   2    |   75   |  5   |
   3    |   67   |  8   |

教师表:

    Instructor | Course | Post |
    -----------|--------|------|
         5     |   67   |  9   |
         4     |   75   |  11  |
         7     |   67   |  7   |

我加入了两张桌子,左边加入了课程,以获得一个学生的桌子和他们的各种教练。但是,结果会在同一课程中为两位教师生成重复项。正如您将在下面看到的那样:

Student | Course | Post | Instructor |
--------|--------|------|------------|
   1    |   67   |  4   |     5      |
   1    |   67   |  4   |     7      |
   2    |   75   |  5   |     4      |

有没有办法可以避免重复并显示该课程的两位教师? 感谢

1 个答案:

答案 0 :(得分:1)

试试这个:

SELECT s.*, GROUP_CONCAT(i.Instructor) AS Instructor
FROM student_table s LEFT JOIN instructor_table i USING(Course)
GROUP BY s.Student