select f1 ,sum(f2) 
from tblname
group by f1
having(sum(f2)>4 and sum(f2)<7)

解决方案 »

  1.   

    无双:
    我服你了!
    如果你不想回答我如下的问题,你仍然可以得分(一码是一码),你可以说:"give me your points now."我就会立即给分结帖了——另外的问题另外开帖。但是我想问:having 的语法功能是什么一般在什么时候使用?还有如果我想得到如下的结果怎么写SQL语句:f1 f2 sum
    b  5   6
    b  1   6多谢了。
      

  2.   

    1.having 子句 和 where 子句的功能类似,都是对记录做一些筛选,不同的是where 是
    在分组之前对字段进行比较,having是在分组之后对字段比较,而且having子句中可以
    包含聚合函数,所以可以包含的条件多一些。2. select t1.f1,t1.f2,t2.Newsum
       from tblname t1 inner join ( select f1 ,sum(f2) as Newsum
                                    from tblname
                                    group by f1
                                    having(sum(f2)>4 and sum(f2)<7)
                                   ) as t2
       on t1.f1=t2.f1    
    PS:
       回答问题只是想让知识得到共享,不是为了专家分才来回答问题的,
       也许我也有求教于你或别人的时候,互相帮助才能使大家更快的提高,
       共同进步是我的目标。
      

  3.   

    第一个要求的实现
    select f1,sum(f2) as f3 from test group by f1 having sum(f2)<7 and sum(f2)>4
    第二个要求:select test.f1,f2,A.f3 from test INNER JOIN  
     (select f1 ,sum(f2) as f3  from test group by f1) A ON A.f1=test.f1
    where A.f3>4 and A.f3<7
      

  4.   

    感谢无双和入眠
    但借用两位提供的SQL语句查询时总是报错(“FROM 子句语法错误”)
    为何?