oracle 是10g 10.2.3
主要是调试一个软件包中的过程
cursor cur_mont_lis_resutl is --计算月登录人数和次数
SELECT
PROVCODE,
AREACODE,
VENDER_ID,
OPERATE_TYPE_ID,
count(USERNUMBER) as use_pepo_mon,
count(distinct usernumber) as use_time_day
from oss_openplat_truslogin_monlst
where stats_date >= date_num(g_month_first_day)
and stats_date < g_run_day_n+1
group by
PROVCODE,
AREACODE,
VENDER_ID,
OPERATE_TYPE_ID;
//提取游标的时候非常慢, 该表有上百万的数据.当这不是主要问题 因为运行此过程前已经调试经过了 原始表抽取,日表的统计.反而这月表慢.
open cur_mont_lis_resutl;
loop
fetch cur_mont_lis_resutl bulk collect into --计算月登录人数和次数
l_ARY_provcode,
l_ARY_areacode,
l_ARY_vender_id,
l_ARY_operate_type_id,
l_ARY_use_pepo_mon,
l_ARY_use_time_mon
limit g_batch_size_n;