表的数据如下:
Id Text Percent
1  a    0.2
1  a    0.8
2  b    0.5
2  b    0.6Percent给定一个范围: 0.4 - 0.9,
根据这个条件分别计算每个Text的Percent在给定范围的个数,
查询出来的数据为:Id Text Count
1   a    1   
2   b    2

解决方案 »

  1.   

    select id ,text,count=count(*)
    from tb
    where percent between 0.4 and 0.9
    group by id,text
      

  2.   

    select id ,text,count(*) Count
    from tb 
    where percent between 0.4 and 0.9 
    group by id,text 
      

  3.   

    select id ,text,count(1) Count
    from tb 
    where percent between 0.4 and 0.9 
    group by id,text 
      

  4.   


    老是习惯写sql server代码,修改:
    select id ,text,count(*) count
    from tb 
    where percent between 0.4 and 0.9 
    group by id,text 
      

  5.   

    /*create table a
    (id number(8), 
     text varchar2(10), 
     percent number(4,4));
    insert into a values(1, 'a', 0.2); 
    insert into a values(1, 'a', 0.8); 
    insert into a values(2, 'b', 0.5); 
    insert into a values(2, 'b', 0.6); */select id, text,count(text) from a
    where percent between 0.4 and 0.9
    group by text,id