比如说有如下表格ID    NAME   SOMETHING1 SOMETING2 SOMETHING3
1     aaa      a1          a2         a3
2     bbb      b1          b2         b3
3     ccc      c1          c2         c3
2     bbb      d1          d2         d3
如果按照ID来分组,使用Group by,但是我想同时将字段SOMETHING1里的内容整合起来,即最后想变成如下结果ID    NAME   SOMETHING1 SOMETING2 SOMETHING3
1     aaa      a1          a2         a3
2     bbb      b1,d1       b2         b3
3     ccc      c1          c2         c3请问怎么写查询语句?SqlServer中貌似可以,以前有作过这个功能,但是MySQL中好象不适用~~请问各位大侠能指点一二吗?

解决方案 »

  1.   

    看一下MYSQL中的GROUP_CONCAT函数。
      

  2.   

    create table lk2(id int not null,
    `name` char(20),
    something1 char(2),
    something2 char(2),
    something3 char(2));
    insert into lk2 values
    (1 ,'aaa','a1','a2','a3'),
    (2,'bbb','b1','b2','b3'),
    (3,'ccc','c1','c2','c3'),
    (2,'bbb','d1','d2','d3'); select id,`name`,group_concat(something1),something2,something3 from lk2 group by id;query result(3 records)
    id name group_concat(something1) something2 something3 
    1 aaa a1 a2 a3 
    2 bbb b1,d1 b2 b3 
    3 ccc c1 c2 c3