通过一个存储过程根据名称和日期得到一串数据,数据中有星期一,星期二这两条纪录 ,
需要向这一周没有纪录的其余五天的表中插入空值。怎样判断这一周没有的星期? 然后将没有的纪录插入空值
(一个名称需要向周表中插入7条纪录)
-- ---
create or replace procedure proc_event
as
begin
insert into eventweek( eventsource, eventcount , eventweek)
select
x.eventsource ,count(*),
sum(x.eventcount)/count(*) as s ,
to_char(eventtime ,'DAY')
from (
select t.eventsource from event t group by t.eventsource )
a, event x where a.eventsource=x.eventsource(+)
group by x.eventsource, to_char(eventtime ,'DAY') ;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RETURN;
end ;
------------------------------------------------------------------------
sourcename count sum week
sourcename1 3 40 星期日
sourcename 1 76 星期二
sourcename1 8 40 星期五
sourcename1 3 40 星期六
sourcename1 2 40 星期一
6 sourcename 22 42 星期一