学会用mysql group_concat

mysql  group_concat用法  常用于不固定列查询

 

例:select t.type,group_concat(concat(t.name,'_',t.score))  from table  t  where t.type ;

    结果:  数学   张三_100,李四_200,王五_70

             语文   ...

 

   group_concat 默认是以 "," 逗号分隔,若group_concat 本身的字段带有逗号, 则不能以逗号分割

             sql可变为:  select t.type,group_concat(concat(t.name,'_',t.score) separator 分隔符)    ,  聚合函数后跟上sparator 关键字 可解决    

 

 

学会用mysql group_concat

 

以上列子可理解为:某一个对应的ID,在当前这张表里边出现了几次。具体数据是什么。这样就可以能轻易的实现不固定列。如出现一次就是一列, 2次就是两列.....同时对应的数据可在代码做相应处理。不如以-链接,解析以逗号分隔,以及中横线分隔等等。可通过sparator关键字来定义。