原来的SQL如下:
select wm_concat(),c1,c2,c3 from t1 group by c1,c2,c3现在我想多取2个字段的值,将SQL改成如下的样子:
select wm_concat(),c1,c2,c3,c4,c5 from t1 group by c1,c2,c3,c4,c5请问这样修改,会有什么问题吗?还有如果有2条记录的c5都相同,第2个SQL会把这2条记录合并为一条吗?

解决方案 »

  1.   

    如果只有 c5相同,肯定不会合并啊group by c1,c2,c3,c4,c5。。必须五个都相同才能合并
      

  2.   

    第二个SQL中的字段c4如果需要处理一下,如下所示:
    这时group by是对c4分组,还是对substr(c4,0,14)的结果分组?select wm_concat(),c1,c2,c3,substr(c4,0,14),c5 from t1 group by c1,c2,c3,c4,c5
      

  3.   

    是对group by后面的列名进行分组,所以是c4,而不是substr(c4,0,14)
      

  4.   

    建个简单的表 测试下就知道了 分组合并 只真对group by后面的同类分组 和前面的字段没关 但是select后的字段 group by后必须出现
      

  5.   


    你group by c4 肯定是按c4了对substr(c4,0,14)的结果分组就group by substr(c4,0,14)。。这种简单问题,楼主为什么不自己弄数据测试呢。还要在这里问。