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

Posted start逍遥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 "-")    

 

以上是关于MySql采用GROUP_CONCAT合并多条数据显示的方法的主要内容,如果未能解决你的问题,请参考以下文章

mysql用GROUP_CONCAT合并查询出现乱码?求大神!!!

数据库mysql将id相同数据合并-group_concat函数

mysql合并和时间函数

mysql 多行(GROUP_CONCAT)和多列(CONCAT)的合并函数

MySQL GROUP_CONCAT 和 ORDER 以及合并列请帮助

mysql groupby 字段合并问题(group_concat)