现在有一个小问题,但是不太知道如何实现,group by有限制语句么??
比如表示这样的a  b  c  d1  2  3  1
1  3  5  2 
1  5  5  4
2  1  2  1
2  1  2  2现在是想 提取出  a b c 然后sum (d);
select a,b,c,sum(d) from table group by a 加点什么限制条件呢?取出的结果是
1  2  3  1
1  3  5  2
1  5  5  4
2  1  2  3就是当a b c都相同的时候  把d相加  列为一列

解决方案 »

  1.   

    select a,b,c,sum(d) from table group by concat(a,b,c)
      

  2.   

    取出的结果是
     1  2  3  1
     1  3  5  2
     1  5  5  4
     2  1  2  3
    如果是 group by a的话应该只有两条记录啊,不知道楼主的4条记录怎么查询出来的
    “就是当a b c都相同的时候  把d相加  列为一列 ”如果只想实现这个功能的话,你直接用where条件就可以了啊
    select a,b,c,sum(d) from table where a=b and b=c
      

  3.   


    你没明白是需要做什么.....看到第二个表和第一个表的区别了么。是表中的两列中的abc相等,不是a=b=c