id  user date  text
1  aaa 2006-7 内容 
2  aaa 2006-7 内容 
3  bbb 2006-7 内容 
4 aaa 2006-8 内容 
5  aaa 2006-8 内容 
6  bbb 2006-8 内容 
7  bbb 2006-8 内容 
8  ccc 2006-8 内容 
9  ccc 2006-8 内容 
10  ccc 2006-9 内容 
11  aaa 2006-9 内容 
12  aaa 2006-9 内容 
13  aaa 2006-9 内容 
......统计结果:每个月份 text记录条数为0-1条的user有多少个? text记录条数为2-3条的user有多少个? text记录条数为3-4条的user有多少个?2006-7 text的记录有0-1条user的有 1个
2006-7 text的记录有2-3条user的有 1个
2006-8 text的记录有2-3条user的有 3个
2006-9 text的记录有0-1条user的有 1个
2006-9 text的记录有3-4条user的有 1个

解决方案 »

  1.   

    SELECT 
       f_C, 'text的记录有'||f_E||'-'||(f_E+1)||'条user的有'||f_D
    FROM
    (
        SELECT f_C , COUNT(f_Count) AS f_D ,f_Count AS f_E FROM 
        (
            SELECT COUNT(f_B) f_Count,f_c FROM t_Test  GROUP BY f_C,f_B
        )
        GROUP BY f_c,f_count
    )
    提供个参考
      

  2.   

    SELECT   date, COUNT (b),    CASE WHEN b < 2 THEN '0-1'
                                       WHEN (b > 1) AND (b < 4) THEN '2-3'  END
        FROM (SELECT   date, COUNT (user) b
                  FROM tab1
              GROUP BY date, user) a
    GROUP BY date, CASE WHEN b < 2 THEN '0-1'
                                       WHEN (b > 1) AND (b < 4) THEN '2-3'  END
      

  3.   

    SELECT 
       f_C, 'text的记录有'||f_E||'-'||(f_E+1)||'条user的有'||f_D
    FROM
    (
        SELECT f_C , COUNT(f_Count) AS f_D ,f_Count AS f_E FROM 
        (
            SELECT COUNT(f_B) f_Count,f_c FROM t_Test  GROUP BY f_C,f_B
        )
        GROUP BY f_c,f_count
    )
      

  4.   

    SELECT   date, COUNT (b),    CASE WHEN b < 2 THEN '0-1'
                                       WHEN (b > 1) AND (b < 4) THEN '2-3'  END
        FROM (SELECT   date, COUNT (user) b
                  FROM tab1
              GROUP BY date, user) a
    GROUP BY date, CASE WHEN b < 2 THEN '0-1'
                                       WHEN (b > 1) AND (b < 4) THEN '2-3'  END