我正在提取数据,需要获得有效和过期日期列中的人员的运行迭代计数。例如,我需要计算一个月内的成员数量:
m.memid m.effective_dt m.expiration_dt
00010 3/1/14 7/31/15
00011 1/1/12 1/31/14
00012 10/1/13 1/31/15
select mar2015.nummem032015
, apr2015.nummem042015
from (
select count(distinct m.member) as nummem032015
from m
where to_date('31-mar-2015') between trunc(m.EFFECTIVE_DT) and
trunc(m.EXPIRATION_DT
) mar2015
, (
select count(distinct m.member) as nummem042015
from m
where to_date('30-apr-2015') between trunc(m.EFFECTIVE_DT) and
trunc(m.EXPIRATION_DT
) apr2015
我正在寻找一种不必每个月都这样做的方法。
输出看起来像这样:
month count
mar2015 1000
apr2015 2010
may2015 1900
谢谢。