原始表中有字断 start_date(到天的) ,type(类型) cust_id(用户id) time(时长)现在要的结果 是  每个月,某类型的客户数量和总时长我写的SQL是create table b as
select trunc(start_date,'mm') as start_date, sum(time) as time,
count ( distinct cust_id) as cust_num ,type
from A
group by start_date,type;但出来的结果不是我想要的 type在原表中是1到10 一共10个类型 但B表中type从1到几百不等
请高手指教应该怎么写

解决方案 »

  1.   

    select to_char(start_date,'YYYY-MM') mm ,type, count(*) 用户数 , sum(time) 总时长 from tb group by to_char(start_date,'YYYY-MM'),type
      

  2.   

    to_char(start_date,'YYYY-MM') mm??? 这是什么意思?
      

  3.   

    补充一下 我开始以为是group   by   start_date,type; 这里忘记group by trunc(start_date,'mm'),type; 了
    不过我后来又试了次 type的结果还是乱七八糟的
      

  4.   

    to_char(start_date,'YYYY-MM')   mm???   这是什么意思?转换日期到月份.如 2007-12,你试试就知道了.你不是要:每个月?就是按每月分组.
      

  5.   

    A表中type类型有没有其它条件?