MySql采用GROUP_CONCAT合并多条数据显示的方法

情况分析:

 1、 表course 

  id     name 

  1      课程一

=================

  2、表course_teacher

     id   course_id  teacher_name

  1     1                   老师一

     2      1                   老师二

====================

需要一条语句查出  课程id、课程名称、负责老师名称

使用 GROUP_CONCAT()函数 ,

方法:select c.*,GROUP_CONCAT(t.teacher_name)    from course c left join  course_teacher t on  c.id=t.course_id where c.id=1 

  默认“,” 分割,也可以修改  GROUP_CONCAT(t.teacher_name  SEPARATOR "-")  

  注意低版本mysql 会出现返回BLOB ,为了兼容老版本的MySql我们需要把teacher_name 字段转换

  如 : GROUP_CONCAT(CAST(t.teacher_name  AS char)SEPARATOR "-")    

 

posted @ 2016-11-13 14:14  start逍遥  阅读(2874)  评论(0编辑  收藏  举报