比如下面格式数据:
A              B     C   主键列略
2007-01-01     za    20 
2007-01-02     za    18
2007-02-03     za    22
2007-02-04     za    27
2007-02-05     za    30
2007-01-04     ha    21
2007-01-25     ha    20
2007-02-11     ha    23
2007-02-13     ha    24
2007-02-14     ha    25
2007-02-15     ha    40...
要求得到结果如下:根据用户选择查询条件月份
如:选择2007一月
汇总2007年一月份的结果:
B    结果
za  (20+18)
ha  (21+20)
如:选择2007二月
汇总2007年二月份的结果:
B    结果
za  (22+27+30)
ha  (23+24+25+40)请问高手,这样的sql语句怎么写?

解决方案 »

  1.   

    select b,sum(c) from table group by b where a>=... and a<...;
      

  2.   

    这样还是报错,sql命令未正确结束
      

  3.   

    select b,sum(c) from tb where a=date group by b
      

  4.   

    报错:不是group by 表达式,我的B子段是字符串型,是啥问题?
      

  5.   

    select b,sum(c) from table where a>=... and a<... group by b;
    跟b的数据类型没有关系
      

  6.   

    select prove_name,city_name,coun_name,coal_name,well_id,sum(over_emp_num)
    from M_REPORT_WELL_OVER_MEM_NUM 
    where substr(to_char(stat_date,'YYYY-MM-DD'),1,7)=substr('2006-12-22',1,7)
    and city_id='610200'
    group by coal_id帮我看一下,这个sql那里出了错?
      

  7.   

    CREATE TABLE aaaaa
        (aa                             DATE,
        bb                             VARCHAR2(7),
        cc                             NUMBER(5,0));insert into aaaaa values (date '2007-01-01','za',20);
    insert into aaaaa values (date '2007-01-02','za',18);select bb,sum(cc) from aaaaa group by bb;
    没有问题,楼主看一下和你的要求有没有区别?
      

  8.   

    select prove_name,city_name,coun_name,coal_name,well_id,sum(over_emp_num)
    from M_REPORT_WELL_OVER_MEM_NUM 
    where substr(to_char(stat_date,'YYYY-MM-DD'),1,7)=substr('2006-12-22',1,7)
    and city_id='610200'
    group by prove_name,city_name,coun_name,coal_name,well_id要这样写的
      

  9.   

    如果你在group by 后再增加个coal_id