如题:我有2个表A,B.表A记录的是每天的信息,表B记录的统计的信息,具体结构类似下表:
表A:
M_ID(主键) ID(主键,自增) name  a数量  b数量  c数量
表B:
M_ID(主键) ID(主键,自增) name  a数量  b数量  c数量 ...其他字段例如:A表中有数据
XXX_0806   1     书本  1   2   3
XXX_0806   2     书本  4   5   6
XXX_0807   3     书本  7   8   9
XXX_0807   4     书本  10  11  12那么表B中要统计XXX_0806,XXX_0807的信息时,得到的数据如下:
XXX_0806_07 1    书本  (1+7)  (2+8)  (3+9) ....
XXX_0806_07 1    书本  (4+10) (5+11) (6+12) ....具体的表中会有很多条记录,但是模板是一样的,只要这个的sql语句写出来了,其他的就可以类推了。小弟刚学编程,不太懂,希望大侠们帮忙看看。先谢谢了。

解决方案 »

  1.   

    刚才数据没有写清楚,现在补充下:
    例如:A表中有数据 
    XXX_0806  1    书本  1  2  3 
    XXX_0806  2    电脑  4  5  6 
    XXX_0807  3    书本  7  8  9 
    XXX_0807  4    电脑  10  11  12 那么表B中要统计XXX_0806,XXX_0807的信息时,得到的数据如下: 
    XXX_0806_07 1    书本  (1+7)  (2+8)  (3+9) .... 
    XXX_0806_07 2    电脑  (4+10) (5+11) (6+12) .... 实际上就是要对A表数据进行统计,然后放到B表中,不知道sql语句能不能实现?
      

  2.   

    是呀哦分天统计?
    select M_ID,min(id),sum(a数量),sum(b数量),sum(c数量) from B group by M_ID
      

  3.   

    select max(M_ID),min(id),Name,sum(a数量),sum(b数量),sum(c数量) from A group by Name
      

  4.   

    XXX_0806_07 1    书本  (1+7)  (2+8)  (3+9) ....
    XXX_0806_07 1    书本  (4+10) (5+11) (6+12) .... ??
    没有看懂
      

  5.   

    select Name,sum(字段一),sum(字段二),sun(字段三) from 表 group by Name
    name字段有书本、电脑等
      

  6.   

    分组统计
    insert into 表B (你的字段) Values(select max(M_ID),min(id),Name,sum(a数量),sum(b数量),sum(c数量) from A group by Name)
      

  7.   

    select max(M_ID),min(id) as mid,Name,sum(a数量),sum(b数量),sum(c数量) from A group by Name order by mid想要按哪个排序你自己选吧
      

  8.   

    引用 17 楼 Ivy_zheng 的回复:
    为什么是1、3相加,而不是1、2或1、4? 
    你的数据库中没有办法区分是哪两个行相加,这种设计违反了关系数据库的基本原则,即所有实体都是可区分的。 
     
    因为 1,3都是书本,2,4都是电脑。XXX_0806  1    书本  1  2  3 
    XXX_0806  2    书本  4  5  6 
    XXX_0807  3    书本  7  8  9 
    XXX_0807  4    书本  10  11  12
    这里都是书本,没有电脑啊