群里一人提的关于数据复杂统计的问题

mac2022-06-30  87

群里一人提的关于数据复杂统计的问题 现有表BD_WORK_INFO如下: +A%V+a|louFi.R15483376CREATE_BY   QUESTION_TYPE   CREATE_DATE   FILL_TIME(耗时) ITPUB个人空间"X?4mRX A                    T102                     (DATE 类型)       0.14 :C(^[7_!?YA15483376B                    T106                     (DATE 类型)       0.15 "@'R1]!fW:B2@ }A*W15483376C                    T103                     (DATE 类型)       0.17 !\~@5?N"F(b:BD15483376A                    T106                     (DATE 类型)       0.18 ITPUB个人空间;q2lDg8h3e B                    T102                     (DATE 类型)       0.19 :M6RP'o7zvZ5Q!M!{o15483376D                   T109                     (DATE 类型)        0.33 ^5g/OdSH ]15483376(表大致如上,表很大,数据很多,但是只需要用到这几个。创建者一共有五十多个,问题类型一共有11个,但是只需要其中的7个。现在要做的就是把这个表一些数据取出做计算后转存在另外一张表,做一个报表的后台数据表,要求如下:) E1AZ9g8YTY*~ s3T15483376姓名  T106  耗时  T102 耗时 T103 耗时 e8YKu"[15483376(其中,T106需要以自然周统计,T102需要以自然月统计。列T102,T106,T103的内容是QUESTION_TYPE 中出现的次数,也就是COUNT()函数,耗时是出现同一QUESTION_TYPE  的总的耗时数,比如说创建人A在一周内出现了4次T106问题,那耗时就是这四次的总耗时。求个存储过程,同时需要一个视图,因为前台我还做不出来。。。) *{JqA"W'F15483376我折磨一周了。。后天BOSS就要 ITPUB个人空间 PX7CY8M:xc5V._ ---------------- +iU'sr7^l2?\154833761)--view ITPUB个人空间 Z1z ~#T P   create or replace view bd_work_info_tj as select create_by , B0D ~:GP9Z*L15483376case when question_type='T102' then fill_time end T102, @f1SrPJ*Q15483376case when question_type='T106' then fill_time end T106, /v4IoAO"}@15483376case when question_type='T103' then fill_time end T103, ITPUB个人空间2P:uUS2P AF       create_date, zXC;c}4Ca15483376      to_char(create_date,'WW') week, ITPUB个人空间yM _P!xjG       to_char(create_date,'MM') month, 9fg8l&TaS15483376      to_char(create_date,'YYYY') years ITPUB个人空间~p1HqV'v^ H from bd_work_info; 2) ITPUB个人空间(`]G@!f KC+X+V select distinct create_by, ITPUB个人空间An%^:Q3|j(m count(week) over(partition by create_by,week) COUNTT102,--出现次数 ITPUB个人空间UnA!m6s o8c2c sum(T102) over(partition by create_by,week) SUMT102,--耗时 7St ||0]t7lj15483376count(month) over(partition by create_by,month) COUNTT106, IX9D,LA2x/lr15483376sum(T106) over(partition by create_by,month) SUMT106, .G/gk)B#d VI`15483376count(T103) over(partition by create_by)  COUNTT103, ih6u;I6@U&x15483376sum(T103) over(partition by create_by) SUMT103 ITPUB个人空间N NEQQ2gge.n@ from bd_work_info_tj order by create_by posted on 2012-05-04 08:35  蓝红石 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/liuweihua/archive/2012/05/04/2482108.html

最新回复(0)